链表
文章平均质量分 79
tanyujing
这个作者很懒,什么都没留下…
展开
-
输出单链表的中间节点
输入一个单向链表,如果该链表的结点数为奇数,输出中间的结点;如果链表结点数为偶数,输出中间两个结点前面的一个。 public class Test_09_extend { public static void main(String[] args) { SignalList list= new SignalList(); int[] input = {1,2,3,4,5,6原创 2013-01-07 19:49:33 · 1338 阅读 · 0 评论 -
反转链表
题目:输入一个链表的头结点,反转该链表,并返回反转后链表的头结点。链表结点定义如下:struct ListNode{ int m_nKey; ListNode* m_pNext;};分析:这是一道广为流传的微软面试题。由于这道题能够很好的反应出程序员思维是否严密,在微软之后已经有很多公司在面试时采用了这道题。为了正确地反转一个链表,需要调原创 2013-01-18 10:35:04 · 1743 阅读 · 0 评论 -
输出单链表中倒数第k个结点
题目:输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针。链表结点定义如下:struct ListNode{ int m_nKey; ListNode* m_pNext;};分析:为了得到倒数第k个结点,很自然的想法是先走到链表的尾端,再从尾端回溯k步。可是输入的是单向链表,只有从前往后的指针而没有从后往前的指针原创 2013-01-07 19:44:50 · 2899 阅读 · 2 评论 -
两链表的第一个公共结点(比较两个链表节点是否相同时比较不了啊,该题尚未完成)
题目:两个单向链表,找出它们的第一个公共结点。链表的结点定义为:struct ListNode{ int m_nKey; ListNode* m_pNext;};分析:这是一道微软的面试题。微软非常喜欢与链表相关的题目,因此在微软的面试题中,链表出现的概率相当高。如果两个单向链表有公共的结点,也就是说两个链表从某一结点原创 2013-03-16 12:30:56 · 2566 阅读 · 0 评论 -
把二元查找树转变成排序的双向链表[数据结构]
题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 比如将二元查找树 10 / \原创 2012-12-30 21:47:43 · 695 阅读 · 0 评论