原题地址:https://leetcode-cn.com/problems/sort-list/description/ 题目描述: 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 输入: 4->2->1->3 输出: 1->2->3->4 示例 2: 输入: -1->5->3->4->0 输出: -1->0->3->4->5 解题方案: 本题对时间复杂度有要求:在 O(n log n) 时间复杂度和常数级空间复杂度下。因此平常使用的插入法和交换法都不能使用,这里就会想到归并法。归并之前,需要对链表进行对...
给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。 这里的遵循指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应模式。 示例1:输入: pattern = "abba", str = "dog cat cat dog" 输出: true 示例 2:输入:pattern = "abba", str = "dog cat cat fish" 输出: false 示例 3:输入: pattern = "aaaa", str = "dog cat cat dog" 输出: false 示例 4:输入: pattern...
908. 最小差值 I 题目描述提示帮助提交记录社区讨论阅读解答 随机一题 给定一个整数数组 A,对于每个整数 A[i],我们可以选择任意 x 满足 -K <= x <= K,并将 x 加到 A[i] 中。 在此过程之后,我们得到一些数组 B。 返回 B 的最大值和 B 的最小值之间可能存在的最小差值。 示例 1:输入:A = [1], K = 0 输出:0 解释:B = [1]示例 2:输入:A = [0,10], K = 2 输出:6 解释:B = [2,8]示例 3:输入:A = [1,3,6], K = 3 输出:0...
编写一个程序,找到两个单链表相交的起始节点。 例如,下面的两个链表:A: a1 → a2↘c1 → c2 → c3↗ B: b1 → b2 → b3在节点 c1 开始相交。 注意: 如果两个链表没有交点,返回 null。 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅用 O(1) 内存。 C/*** Definition for singly-linked list.* struct ListNode {* int val...