上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 40 下一页
摘要: 一、题目 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 二、思路 注:链表1和链表2是两个递增排序的链表,合并这两个链表得到升序链表为链表3. 首先分析合并两个链表的过程。我们的分析从合并两个链表的头结点开始。链表1的头结点的值小于链表2的头结点的值, 阅读全文
posted @ 2017-10-01 22:01 AI菌 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 1、链表节点类 public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } 2、链表逆序类 public class ReverseList { public ListN 阅读全文
posted @ 2017-10-01 20:47 AI菌 阅读(804) 评论(0) 推荐(0) 编辑
摘要: 一、题目 输入一个链表,反转链表后,输出链表的所有元素。 二、思路 详细分析见代码注释 三、代码 public class Solution { public ListNode ReverseList(ListNode head) { if(head==null) return null; //he 阅读全文
posted @ 2017-10-01 18:01 AI菌 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 一、题目 输入一个链表,输出该链表中倒数第k个结点。 二、思路 两个指针,先让第一个指针和第二个指针都指向头结点,然后再让第一个指正走(k-1)步,到达第k个节点。然后两个指针同时往后移动,当第一个结点到达末尾的时候,第二个结点所在位置就是倒数第k个节点了。 三、代码 /* public class 阅读全文
posted @ 2017-10-01 14:23 AI菌 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 一、题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 二、思路 此题可以用类似冒泡排序的算法来解答。遍历数组,当相邻两个数,前面的数是偶数,后面的数是奇数时,交换两个数。 阅读全文
posted @ 2017-10-01 13:22 AI菌 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 一、题目 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 二、思路 1、传统方法计算,时间复杂度O(n) 2、递归方式计算,时间复杂度O(logn) 当exponent为偶数时,例如求base^10,则result= base^5 * 阅读全文
posted @ 2017-10-01 02:16 AI菌 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 一、题目 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 二、思路 方法一: 用1(1自身左移运算,其实后来就不是1了)和n的每位进行位与,来判断1的个数 方法二: 把一个整数减去1,再和原整数做与运算,会把该整数最右边一个1变成0.那么一个整数的二进制有多少个1,就可以进行多少次 阅读全文
posted @ 2017-10-01 00:46 AI菌 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 一、题目 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 二、解答思路 如果第一步选择竖方向填充,则剩下的填充规模缩小为n-1; 如果第一步选择横方向填充,则剩下的填充规模缩小为n-2,因为第一排确定后,第二排也就确定 阅读全文
posted @ 2017-09-30 23:06 AI菌 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 一、题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 二、思路 1、关于本题,前提是n个台阶会有一次n阶的跳法。分析如下: f(1) = 1 f(2) = f(2-1) + f(2-2) //f(2-2) 表示2阶一次跳2阶的次数。 阅读全文
posted @ 2017-09-30 22:01 AI菌 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 一、题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 二、思路 a.如果两种跳法,1阶或者2阶,那么假定第一次跳的是一阶,那么剩下的是n-1个台阶,跳法是f(n-1); b.假定第一次跳的是2阶,那么剩下的是n-2个台阶,跳法是f(n-2) c.由a\ 阅读全文
posted @ 2017-09-30 21:43 AI菌 阅读(181) 评论(0) 推荐(0) 编辑
上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 40 下一页