php制作网站开发网址大全qq浏览器
文章目录
- 82. 删除排序链表中的重复元素 II
- 题目
- 题解
- 2744. 最大字符串配对数目
- 题目
- 题解
82. 删除排序链表中的重复元素 II
- 82. 删除排序链表中的重复元素 II
题目
给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。
题解
/*** Definition for singly-linked list.* function ListNode(val, next) {* this.val = (val===undefined ? 0 : val)* this.next = (next===undefined ? null : next)* }*//*** @param {ListNode} head* @return {ListNode}*/
var deleteDuplicates = function (head) {if (!head) {return head;}// 链表头可能被删除,增加哑节点指向链表头const dummy = new ListNode(0, head);// 指针let cur = dummy;while (cur.next && cur.next.next) {// 元素重复if (cur.next.val === cur.next.next.val) {// 重复值const x = cur.next.val;//重复值后一个元素指向cur.next = cur.next.next.next;while (cur.next && cur.next.val === x) {cur.next = cur.next.next;}} else {// 指针移动cur = cur.next;}}// 去除哑节点return dummy.next;
};
2744. 最大字符串配对数目
- 2744. 最大字符串配对数目
题目
给你一个下标从 0 开始的数组 words ,数组中包含 互不相同 的字符串。
如果字符串 words[i] 与字符串 words[j] 满足以下条件,我们称它们可以匹配:
字符串 words[i] 等于 words[j] 的反转字符串。
0 <= i < j < words.length
请你返回数组 words 中的 最大 匹配数目。
注意,每个字符串最多匹配一次。
题解
/*** @param {string[]} words* @return {number}*/
var maximumNumberOfStringPairs = function (words) {const indexMap = {};let sum = 0;for (let i = 0; i < words.length; i++) {if (indexMap[words[i]]) {sum++;} else {const [a, b] = words[i];indexMap[b + a] = true;}}return sum;
};