2019年12月28日

打印从1到最大的n位数(剑指offer_17_多看)

摘要: 题目描述 输入数字n,按顺序打印出从1到最大的n位十进制数。比如输入3,则打印出1/2/3一直到最大的3位数即999。 解题思路 由于n可能非常大,因此不能直接用int来表示数字,而是用char数组进行存储。 使用回溯法得到所有的数。 用字符串表示数字的时候,最直观的方法就是字符串里每个字符都是 ' 阅读全文

posted @ 2019-12-28 16:42 Hebye 阅读(291) 评论(0) 推荐(0) 编辑

数值的整数次方(剑指offer_16)

摘要: 题目描述 给定一个double类型的浮点数base和int类型的整数exponent, 求base 的 exponent次方。 解题思路 下面的讨论x代表base,n代表exponent。 因为 (x*x)n/2 可以通过递归求解,并且每次递归n都减小一半,因此整个算法的时间复杂度为 O(logN) 阅读全文

posted @ 2019-12-28 15:00 Hebye 阅读(148) 评论(0) 推荐(0) 编辑

二进制中1的个数(剑指offer_15)

摘要: 题目描述 输入一个整数,输出该数二进制表示中1的个数。 n&(n-1) 该位运算去除n的位级表示中最低的那一位。 n : 10110100 n-1 : 10110011 n&(n-1) : 10110000 一个结论 结论:一个数与该数减一的结果进行与运算n&(n-1),会把该数右边(低位)第一个1 阅读全文

posted @ 2019-12-28 14:36 Hebye 阅读(193) 评论(0) 推荐(0) 编辑

导航