每日一题——删除无头链表的非尾节点、逆向打印单链表
来源:互联网 发布:淘宝卖家参加聚划算 编辑:程序博客网 时间:2024/06/05 08:48
删除无头链表的非尾节点
这个题还有一种出法:在O(1)时间复杂度下删除单链表节点(非表头节点或非尾节点)
void deleteNode(ListNode *node) { ListNode* tmp = node->next; node->val = tmp->val; node->next = tmp->next; delete tmp; }
逆向打印单链表
这里有三种方法:
1,逆置单链表;
2,遍历单链表,将元素压入栈中,根据栈“先进后出”的性质来逆向打印单链表;
3,递归
方法一:ListNode* ReverseShow(ListNode* head){ if(head == NULL) return NULL; if(head->next == NULL) return head; ListNode* cur = head; ListNode* begin = head; ListNode* last = head->next; while(last) { cur = last; last = last->next; cur->next = begin; begin = cur; } head->next = NULL; //单链表逆置完成 while(cur) { cout<<cur->val<<"->"; cur = cur->next; } cout<<endl;}
方法二:ListNode* ReverseShow(ListNode* head){ stack<int> s; ListNode* cur = head; while(cur) { s.push(cur->val); cur = cur->next; } while(!s.empty()) { cout<<s.top()<<"->"; s.pop(); }}
方法三:ListNode* ReverseShow(ListNode* head){ if(head == NULL) return NULL; ReverseShow(head->next); cout<<head->val<<"->";}
阅读全文
0 0
- 每日一题——删除无头链表的非尾节点、逆向打印单链表
- 删除一个无头单链表的非尾节点【每日一题】
- 每日一题之删除尾节点并从尾到头打印
- 判断链表相交,删除无头单链表的非尾节点及倒序打印单链表——题集(四)
- 【链表】删除一个无头单链表的非尾节点 以及从尾到头打印单链表
- 删除一个无头单链表的非尾节点+从尾到头打印单链表
- 17_7_17:删除一个无头单链表的非尾节点。从尾到头打印单链表
- 笔试/面试:删除一个无头单链表的非尾节点 ,从尾到头打印单链表
- 1.删除一个无头单链表的非尾节点 2.从尾到头打印单链表
- 1.删除一个无头单链表的非尾节点 2.从尾到头打印单链表
- day05删除一个无头单链表的非尾节点 +从尾到头打印单链表+复杂链表的复制
- 【每日一题】2012.5.27:删除多余的空格-非原创
- CTF 【每日一题20160626】简单的PE文件逆向
- CTF 【每日一题20160627】简单的ELF逆向
- C语言:【单链表】删除一个无头单链表的非尾节点
- 删除一个无头单链表的非尾节点
- 删除一个无头单链表的非尾节点
- 无头单链表的非尾节点删除
- 标准c++库和stl库,boost库,qt库的总结(一)
- asp.net三种发送邮件代码(stmp,无组件邮件发送)
- 面试编程知识+算法题总结(一)
- Spring boot之读取自定义配置文件
- vue学习指南3
- 每日一题——删除无头链表的非尾节点、逆向打印单链表
- 精华【分布式微服务云架构dubbo+zookeeper+springmvc+mybatis+shiro+redis】分布式大型互联网企业架构!
- js技术--cookie基础(封装cookie、使用cookie记录上一次用户登录名)
- STM32F407系统时钟配置是否添加FPU功能
- 获取wsdl接口账号密码限制读取的
- 说说JSON和JSONP,也许你会豁然开朗,含jQuery用例
- webpack + react + redux + es6 开发组件化前端项目
- μC/OS Ⅱ之任务就绪表的操作_2012.5.31
- 腾讯2017秋招笔试编程题--素数对