题目描述: 输入一个链表,反转链表后,输出新链表的表头。 解题思路: 本题比较简单,有两种方法可以实现:(1)三指针。使用三个指针,分别指向当前遍历到的结点、它的前一个结点以及后一个结点。将指针反转后,三个结点依次前移即可。(2)递归方法。同样可以采用递归来实现反转。将头结点 ...
题目描述: 输入一个链表,反转链表后,输出链表的所有元素。 hint : 请务必使用链表 输入: 输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为一个整数n lt n lt :代表将要输入的链表的个数。输入的第二行包含n个整数t lt t lt :代表链表元素。 输出: 对应每个测试案例,以此输出链表反转后的元素,如没有元素则输出NULL。 样例输入: 样例输出: 解题 ...
2014-05-29 21:44 0 2358 推荐指数:
题目描述: 输入一个链表,反转链表后,输出新链表的表头。 解题思路: 本题比较简单,有两种方法可以实现:(1)三指针。使用三个指针,分别指向当前遍历到的结点、它的前一个结点以及后一个结点。将指针反转后,三个结点依次前移即可。(2)递归方法。同样可以采用递归来实现反转。将头结点 ...
输入一个链表,输出反转后的链表。 非递归实现: # -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): # self.val = x # self.next ...
本文参考自《剑指offer》一书,代码采用Java语言。 更多:《剑指Offer》Java实现合集 题目 定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。 思路 方法一:使用三个指针(pre,p,next)进行实现。令p指向pre,next则是用于 ...
题目描述: 输入一个链表,输出该链表中倒数第k个结点。(hint: 请务必使用链表。) 输入: 输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和k(0<=n<=1000, 0< ...
题目描述: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 输入: 输入可能包含多个测试样例。对于每个测试案例,输入的第一行为一个数n(0<n<1000),代表 ...
1.题目 输入一个链表的头结点,首先反转链表后,然后输出链表的所有元素(牛客网)。 struct ListNode { int val; struct ListNode *next; }; 2.思路 # 反转链表 辅助指针:定义三个用于翻转链表的辅助指针和一个 ...
题目描述: 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 输入: 输 ...
题目描述: 把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数 ...