题目描述 我们可以用2 1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2 1的小矩形无重叠地覆盖一个2 n的大矩形,总共有多少种方法? 比如n=3时,2 3的矩形块有3种覆盖方法: 这个题目我想到两种思路,一种是 斐波那契数列 ,另一种是 排列组合 排列组合 其实仔细观察这道题我们会发现,2 3 ...
分类:
其他好文 时间:
2020-03-10 12:13:42
阅读次数:
52
/* 输入一个链表,输出该链表中倒数第k个结点。 为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。 例如一个链表有6个结点,从头结点开始它们的值依次是1、2、3、4、5、6。 这个链表的倒数第3个结点是值为4的结点。 */public class Class18 { //利 ...
分类:
编程语言 时间:
2020-03-09 22:30:43
阅读次数:
69
/*给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。 */public class Class16 { static class ListNode{ int val; ListNode next; public ListNode(int value, ListNode ne ...
分类:
编程语言 时间:
2020-03-09 21:16:14
阅读次数:
87
题目描述 输入一个链表,反转链表后,输出新链表的表头。 思路 一个比较经典的题目。要维护3个指针:当前结点的指针curNode、当前结点的前一个结点的指针preNode和当前结点的下一个结点的指针nextNode。首先使用nextNode保存curNode的下一个结点地址,不然链表会断掉,然后将cu ...
分类:
其他好文 时间:
2020-03-09 20:55:01
阅读次数:
46
/* 打印1到最大的n位数 *///一开始想到的是直接构造出最大数,然后逆序输出,把‘0’排除在外即可。看了一些网上的博客,要注意大叔情况,因此使用以下方法。public class Class15 { public void printNumber(int n){ if(n <= 0){ retu ...
分类:
编程语言 时间:
2020-03-09 19:37:08
阅读次数:
66
链接:https://leetcode cn.com/problems/zai pai xu shu zu zhong cha zhao shu zi lcof/ 代码 ...
分类:
编程语言 时间:
2020-03-09 18:14:37
阅读次数:
69
链接:https://leetcode cn.com/problems/que shi de shu zi lcof/ 代码 ...
分类:
其他好文 时间:
2020-03-09 18:11:54
阅读次数:
44
题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字数据范围: 对于%50的数据,size ...
分类:
编程语言 时间:
2020-03-09 17:39:50
阅读次数:
66
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 这个题目是跳台阶的进阶版,其实跟大家分析一下,这道题其实比上一道题简单。在这道题目中,青蛙可以随意一次性跳n级台阶,也就是说如果青蛙想我先枚举一下前几级台阶的跳法数量: 第一级台 ...
分类:
其他好文 时间:
2020-03-09 17:38:59
阅读次数:
55
题目描述 输入一个链表,输出该链表中倒数第k个结点(k从1开始)。 思路1 假设链表中共有n个节点,倒数第k个节点即为正数第n k+1个节点(正数倒数编号都从1开始)。所以我们首先要将链表遍历一遍获得长度n,然后再移动到第n k+1个节点即可。对应代码如下: 思路2 思路1主要的缺点是要先把链表遍历 ...
分类:
其他好文 时间:
2020-03-09 16:25:07
阅读次数:
70