摘要: "101 删除排序数组中的重复数字 II" 跟进“删除重复数字”: 如果可以允许出现两次重复将如何处理? 样例 标签 数组 两根指针 脸书 思路 参照上一篇博客 "lintcode 100 删除排序数组中的重复数字" ,只需加一个标志isSecond,用于表示某个数字是否出现了2次 code cla 阅读全文
posted @ 2017-07-12 21:57 LiBaoquan 阅读(278) 评论(0) 推荐(0)
摘要: "100 删除排序数组中的重复数字" 素只出现一次,并且返回新的数组的长度。 不要使用额外的数组空间,必须在原地没有额外空间的条件下完成。 样例 给出数组A =[1,1,2],你的函数应该返回长度2,此时A=[1,2]。 标签 数组 两根指针 脸书 思路 将数组分为两段,前一段是已经删除重复元素的数 阅读全文
posted @ 2017-07-12 21:13 LiBaoquan 阅读(836) 评论(0) 推荐(0)
摘要: "99 重排链表" 给定一个单链表L: L0→L1→…→Ln 1→Ln, 重新排列后为:L0→Ln→L1→Ln 1→L2→Ln 2→… 必须在不改变节点值的情况下进行原地操作。 样例 给出链表 1 2 3 4 null,重新排列后为1 4 2 3 null。 挑战 Can you do this i 阅读全文
posted @ 2017-07-12 17:25 LiBaoquan 阅读(641) 评论(0) 推荐(0)
摘要: "98 链表排序" 在 O(n log n) 时间复杂度和常数级的空间复杂度下给链表排序。 样例 给出 1 3 2 null,给它排序变成 1 2 3 null. 挑战 分别用归并排序和快速排序做一遍。 标签 链表 思路 采用归并排序(时间复杂度是O(nlogn)的排序有快速排序、归并排序、堆排序) 阅读全文
posted @ 2017-07-12 15:14 LiBaoquan 阅读(909) 评论(0) 推荐(0)
摘要: "96 链表划分" 给定一个单链表和数值x,划分链表使得所有小于x的节点排在大于等于x的节点之前。 你应该保留两部分内链表节点原有的相对顺序。 样例 给定链表 1 4 3 2 5 2 null,并且 x=3 返回 1 2 2 4 3 5 null 标签 链表 两根指针 思路 遍历一次链表,使用常数级 阅读全文
posted @ 2017-07-12 10:11 LiBaoquan 阅读(397) 评论(0) 推荐(0)