摘要:
题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 思路:由于性质:a ^ a = 0 ; 0 ^ n = n; 由于数组中有两个数字只出现一次,所以: 1. 将数组中的所有数字 ^,得到的数是这两个数的 ^, 2. 找到两个数 ^ 结果的最后一个 阅读全文
摘要:
题目描述 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 首先看到这个题,不让用for,while等等。要实现循环,那么就是递归了。 1.需利用逻辑与的短路特性实现递归终止。 2.当n==0时,(n>0) 阅读全文
摘要:
题目描述 在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置 思路:将每个字符作为数组下标,数组中记录出现的次数。 代码: int FirstNotRepeatingChar(string str) { map<char,int> mp; in 阅读全文
摘要:
题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1 阅读全文
摘要:
桶排序:适用于小数排序,相同位数的数进行排序。 我觉得桶排序是计数排序与哈希表的结合 思路:按照最高位申请空间,然后把最高位相同的放入相同的桶中,然后将一个桶中的数排序。(即高位相同的排序) 最后按照顺序,将哈希表中的值放回数组。 我的代码:在对链表排序是使用冒泡排序 代码二:在对链表排序时使用插入 阅读全文