随笔分类 -  剑指offer

摘要:题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 代码 需要注意的是指数可能会是负数,在做的时候需要小心。 阅读全文
posted @ 2019-05-27 13:16 星星,风,阳光 阅读(120) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 代码 减1的话一定会导致原数据有一位上的1变成0,直接取与操作会将该位置0. 阅读全文
posted @ 2019-05-27 12:59 星星,风,阳光 阅读(107) 评论(0) 推荐(0) 编辑
摘要:题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 代码: 阅读全文
posted @ 2019-05-21 13:23 星星,风,阳光 阅读(89) 评论(0) 推荐(0) 编辑
摘要:题目描述 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快 阅读全文
posted @ 2019-05-16 20:21 星星,风,阳光 阅读(97) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 输出描述: 对应每个测试案例,输出两个数,小的先输出。 代码: class Solution { public: vector FindNumbersWithS 阅读全文
posted @ 2019-05-16 20:03 星星,风,阳光 阅读(99) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 代码: class Solution { public: string PrintMinNumber(vecto 阅读全文
posted @ 2019-05-16 12:57 星星,风,阳光 阅读(108) 评论(0) 推荐(0) 编辑
摘要:题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6, 3, 2,7, 15,1 阅读全文
posted @ 2019-05-15 13:26 星星,风,阳光 阅读(95) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 代码: 只是快排是能够解决这个问题的,不过这里对快排进行了一点更改,减小了时间复杂度. 阅读全文
posted @ 2019-05-14 19:39 星星,风,阳光 阅读(129) 评论(0) 推荐(0) 编辑
摘要:题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 代码: // 至少三种方法 // 1. 遍历统计每个数字次数(O(n^2)) 阅读全文
posted @ 2019-05-14 18:54 星星,风,阳光 阅读(145) 评论(0) 推荐(0) 编辑