链表基础之翻转,删除
来源:互联网 发布:女朋友胸很大知乎 编辑:程序博客网 时间:2024/05/19 00:12
翻转链表
给出一个链表1->2->3->null,这个翻转后的链表为3->2->1->null
class Solution {public: /** * @param head: The first node of linked list. * @return: The new head of reversed linked list. */ ListNode *reverse(ListNode *head) { // write your code here ListNode* pre = NULL; while(head != NULL){ ListNode* temp = head ->next; head ->next = pre; pre = head; head = temp; } return pre; }};
链表删除重复的结点,留下唯一一个相同结点
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,
Given1->1->2, return1->2.
Given1->1->2->3->3, return1->2->3.
class Solution {public: ListNode *deleteDuplicates(ListNode *head) { if (head == NULL) return head; ListNode* pHead = head; while(pHead != NULL){ while(pHead ->next != NULL && pHead ->val == pHead ->next ->val){ pHead ->next = pHead ->next ->next; } pHead = pHead ->next; } return head; }};
删除全部相同的链表结点
- 这个在牛客上超时了。。。如有看出哪里的问题麻烦指教
class Solution {public: ListNode *deleteDuplicates(ListNode *head) { if (head == NULL || head ->next == NULL) return head; ListNode* dummy = new ListNode(0); dummy->next = head; head = dummy; //将头指针前移 while(head ->next != NULL && head ->next ->next != NULL){ if(head ->next ->val == head ->next ->next ->val){//如果两个值相等,记下这个值,删掉所有相同值的结点 int value = head ->next ->val; while(head->next != NULL && head ->val == value){ head ->next = head ->next ->next; } }else{ head = head ->next; } } return dummy ->next; }};
0 0
- 链表基础之翻转,删除
- Java基础之翻转单链表
- 链表的总结(链表排序、翻转、删除节点)
- c数据结构——链表添加+删除+翻转
- LintCode之35 翻转链表
- 菜鸟学习数据结构算法之路之翻转链表与利用递归翻转链表
- c++基础之插入和删除链表节点
- leetcode之链表逆序翻转类-----92/206 逆序 24/25/61/143 按规则翻转 86/234 双指针分治 19/82/83/203 按规则删除
- 无情链表的创建,,翻转翻转
- 数据结构:单链表(二)之链表节点排序,升序插入数据,删除指定的所有节点,翻转链表操作
- C++单向链表之链表翻转
- 剑指Offer算法实现之十六:翻转链表
- 面试系列之二:C艹翻转双向链表
- 链表翻转程序
- 链表翻转
- 链表翻转
- 链表翻转
- 翻转单向链表
- 判断回文
- Spring学习-20:Spring的AOP:自动代理
- 【python学习笔记】2:收集最多价值奖品问题
- bootstrap-table的toolbar用法自定义增删改查工具容器
- anchors数组
- 链表基础之翻转,删除
- 表单基础
- 框架的创建
- SIM900A与网络调试助手进行TCP收发通信
- Android Studio 创建窗口默认继承Activity而非AppCompatActivity
- 删除下拉列表中的选项
- BlockingQueue的基本原理
- 第三方免费加固横向对比
- 嵌入式开发 迅为i.MX6Q开发板启动流程内容分享