摘要: 题目: 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 分析: 因为所有数字都在 阅读全文
posted @ 2019-12-23 16:49 silentteller 阅读(341) 评论(0) 推荐(0)
摘要: 题目: 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0 输入描述: 输入一个字符串,包括数字字母符号,可以为空 输出描述: 如果是合法的数值表达则返回该数字,否则返回0 分析: 注意输入数据的合法性,例如“1234+12”,“12@@# 阅读全文
posted @ 2019-12-23 15:42 silentteller 阅读(616) 评论(0) 推荐(0)
摘要: 题目: 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 分析: 将加法还原成最原始的计算方法,也就是分别计算进位和非进位的和,最后再将这两部分合起来,便是和。我们可以利用&和<<求进位,^求不算进位的和。 例如5+9,5的二进制是101,9的二进制是1001,先求两个 阅读全文
posted @ 2019-12-23 14:14 silentteller 阅读(292) 评论(0) 推荐(0)
摘要: 题目: 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 分析: 利用短路与来判断n是否大于0,从而实现递归求和。 程序: C++ class Solution { public: int Sum_Solu 阅读全文
posted @ 2019-12-23 13:43 silentteller 阅读(332) 评论(0) 推荐(0)