
链表
文章平均质量分 54
yang-彧
视频编码,深度学习
展开
-
链表回文
题目描述:对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。测试样例:1->2->2->1返回:true分析:使用一个栈来存储链表数据,然后再比较栈数据和链表数据的值是否相等.**用s.top()取栈顶元素,用s.pop()来删除栈顶元素。**(1)栈模原创 2016-09-28 19:10:31 · 493 阅读 · 0 评论 -
链表分割
题目描述 编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针。注意:分割以后保持原来的数据顺序不变。 分析:分割之后,都是小于x的值的相对位置应该不表,同理大于x的值的位置也一样不变。 创建两个链表,一个存放小于x的数,一个存放大于等于原创 2016-09-28 20:24:31 · 860 阅读 · 0 评论 -
访问单个节点的删除
题目描述 实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点。 给定带删除的节点,请执行删除操作,若该节点为尾节点,返回false,否则返回true 分析:题目的意思是只能访问待删除的节点,其他的节点不能访问。 /* struct ListNode { int val; struct ListNode *next; Lis原创 2016-09-28 20:42:51 · 434 阅读 · 0 评论