- 博客(18)
- 收藏
- 关注
原创 链表总结
一开始不太熟悉链表的操作。我觉得主要是因为我没有学好指针的知识。做了一些题,慢慢就找到感觉了。 链表就是由若干个结点通过指针的方式连接起来的一种线性结构。 我觉得这里比较重要的就是,头插法,尾插法,和插入排序。能熟练写出这几段代码,就算掌握的差不多了。 我做题时比较喜欢转化成我所熟悉的数组来处理。QQ说这样就失去链表的意义了。但是我觉得这种题,不就是应该怎么简单怎么来嘛~真的是。 还有一些细
2017-03-31 10:13:34 363
原创 LintCode 回文链表
题目描述:设计一种方式检查一个链表是否为回文链表。样例 1->2->1 就是一个回文链表。思路分析:水题。 扫一遍 判断就行了。 比较喜欢转化成数组来操作。ac代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNo
2017-03-31 10:02:43 248
原创 LintCode 链表排序
题目描述:在 O(n log n) 时间复杂度和常数级的空间复杂度下给链表排序。样例 给出 1->3->2->null,给它排序变成 1->2->3->null.思路分析:sort扫一遍~ac代码:/** * Definition of ListNode * class ListNode { * public: * int val; * ListNode *next;
2017-03-31 10:01:12 676
原创 LintCode 删除排序链表中的重复数字 II
题目描述:给定一个排序链表,删除所有重复的元素只留下原链表中没有重复的元素。样例 给出 1->2->3->3->4->4->5->null,返回 1->2->5->null给出 1->1->1->2->3->null,返回 2->3->null思路分析:将重复的元素全都删除。用一个temp记录上一个重复的元素。 当前元素只要满足 不等于 temp 并且不等于 下一个元素即可。 一开始将temp
2017-03-31 09:59:35 413
原创 LintCode 两两交换链表中的节点
题目描述:给一个链表,两两交换其中的节点,然后返回交换后的链表。样例 给出 1->2->3->4, 你应该返回的链表是 2->1->4->3。思路分析:这个题直接 更改每个结点的 val值就行了,没必要改变 结点的 逻辑顺序。ac代码:/** * Definition for singly-linked list. * struct ListNode { * int val; *
2017-03-21 22:51:39 801
原创 LintCode 翻转链表
题目描述: 翻转一个链表样例 给出一个链表1->2->3->null,这个翻转后的链表为3->2->1->null。思路分析:头插法的简单应用。ac代码:/** * Definition of ListNode * * class ListNode { * public: * int val; * ListNode *next; * * ListNod
2017-03-21 22:49:19 323
原创 LintCode 删除链表中倒数第n个节点
题目描述:给定一个链表,删除链表中倒数第n个节点,返回链表的头节点。注意事项链表中的节点个数大于等于n样例 给出链表1->2->3->4->5->null和 n = 2.删除倒数第二个节点之后,这个链表将变成1->2->3->5->null.ac代码:/** * Definition of ListNode * class ListNode { * public: * int va
2017-03-21 22:48:07 488
原创 LintCode 删除排序链表中的重复元素
题目描述: 给定一个排序链表,删除所有重复的元素每个元素只留下一个。样例 给出 1->1->2->null,返回 1->2->null给出 1->1->2->3->3->null,返回 1->2->3->null思路分析:用一个temp记录上次 放进 链表了元素即可。ac代码:/** * Definition of ListNode * class ListNode { * public:
2017-03-21 22:46:51 312
原创 LintCode 链表划分
题目描述:给定一个单链表和数值x,划分链表使得所有小于x的节点排在大于等于x的节点之前。你应该保留两部分内链表节点原有的相对顺序。样例 给定链表 1->4->3->2->5->2->null,并且 x=3返回 1->2->2->4->3->5->null思路分析:题意搞懂了就很简单了。ac代码:/** * Definition of ListNode * class ListNode { *
2017-03-21 22:45:36 251
原创 LintCode 链表倒数第n个节点
题目描述:找到单链表倒数第n个节点,保证链表中节点的最少数量为n。样例 给出链表 3->2->1->5->null和n = 2,返回倒数第二个节点的值1.ac代码:/** * Definition of ListNode * class ListNode { * public: * int val; * ListNode *next; * ListNode(in
2017-03-21 22:43:50 189
原创 LintCode 合并两个排序链表
题目描述:将两个排序链表合并为一个新的排序链表样例 给出 1->3->8->11->15->null,2->null, 返回 1->2->3->8->11->15->null。思路分析:和插入排序一模一样。ac代码:/** * Definition of ListNode * class ListNode { * public: * int val; * ListNode
2017-03-21 22:42:58 175
原创 LintCode 链表插入排序
题目描述: 用插入排序对链表排序样例 Given 1->3->2->0->null, return 0->1->2->3->null。思路分析:感觉是链表的进阶题。 写完这道题,后面题都很简单啦。ac代码:/** * Definition of ListNode * class ListNode { * public: * int val; * ListNode *n
2017-03-21 22:41:47 222
原创 LintCode 删除链表中的元素
题目描述:删除链表中等于给定值val的所有节点。样例 给出链表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回删除3之后的链表:1->2->4->5。思路分析:水题一枚。ac代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *
2017-03-21 22:39:33 166
原创 LintCode硬币排成线 巴什博奕
题目描述: 有 n 个硬币排成一条线。两个参赛者轮流从右边依次拿走 1 或 2 个硬币,直到没有硬币为止。拿到最后一枚硬币的人获胜。请判定 第一个玩家 是输还是赢?样例 n = 1, 返回 true.n = 2, 返回 true.n = 3, 返回 false.n = 4, 返回 true.n = 5, 返回 true.思路分析: 简单的巴什博弈。ac代码:class Solution {p
2017-03-21 22:38:07 287
原创 LintCode 链表求和
你有两个用链表代表的整数,其中每个节点包含一个数字。数字存储按照在原来整数中相反的顺序,使得第一个数字位于链表的开头。写出一个函数将两个整数相加,用链表形式返回和。样例 给出两个链表 3->1->5->null 和 5->9->2->null,返回 8->0->8->null。ac代码:class Solution {public: ListNode *addLists(ListNode
2017-03-21 22:36:01 202
原创 LintCode 在O(1)时间复杂度删除链表节点
给定一个单链表中的一个等待被删除的节点(非表头或表尾)。请在在O(1)时间复杂度删除该链表节点。样例 给定 1->2->3->4,和节点 3,删除 3 之后,链表应该变为 1->2->4。ac代码:class Solution {public: /** * @param node: a node in the list should be deleted * @ret
2017-03-11 22:23:19 301
原创 LintCode 删除链表中的元素
删除链表中等于给定值val的所有节点。样例 给出链表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回删除3之后的链表:1->2->4->5。ac代码:class Solution {public: /** * @param head a ListNode * @param val an integer * @return a Li
2017-03-11 22:22:13 182
原创 poj 1222 EXTENDED LIGHTS OUT 高斯消元法
EXTENDED LIGHTS OUTTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 10098 Accepted: 6498DescriptionIn an extended version of the game Lights Out, is a pu
2017-03-09 18:38:38 158
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人