算法
文章平均质量分 51
Mr_yang_tao
这个作者很懒,什么都没留下…
展开
-
算法-LeetCode-跳台阶
题目一一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果) 解法:这题的解法,主要思路是递归,首先假设第一次跳1级,那么剩下的n-1级的跳法是多少种? 不知道,但是我们假设是x种跳法,如果第一次跳2级,我们同样假设剩下的n-2中跳法有y种。x+y就是总数。那么现在的问题就变成了, 求该青蛙跳上一个n-1级的台阶总共有多少...原创 2018-07-30 15:09:21 · 2312 阅读 · 0 评论 -
算法-LeetCode-整数的二进制表示中1的个数
题目输入一个,输出该数二进制表示中1的个数。 其中负数用补码表示。 说明:对于负数的二进制码,比如-1(由于java中int 为4个直接,总共32位,这里方便表示只取8位) 原码:-1=1000 0001 (最高位为符号位,负数用1表示) 反码:-1=1111 1110 (除了最高位的符号位,其余的全部取反) 补码:-1=1111 1111 (把反码加一,则为补码) ...原创 2018-07-30 16:03:29 · 2215 阅读 · 0 评论 -
DP(动态规划)入门
谈到动态规划,最经典的当然是背包问题,可以百度下<<背包九讲>>。但是这里不准备从背包问题讲起,主要是觉得用背包问题来讲DP的思想,还不够通俗易懂。先来看一个金典的算法题:爬台阶问题有n个台阶,你每次可以爬1阶或2阶,问:爬到顶总共有多少种爬法?例子: n = 3第一种:1 1 1第二种:2 1第三种:1 2总共有3种爬法。解法一:递归代码如下...原创 2018-12-05 15:02:57 · 310 阅读 · 0 评论