问题描述把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。算法分析每个位置上的丑数都是某个丑数乘上2或3或5的结果,看如下示例:第1个丑数是 1,
第2个丑数是 1 * 2 = 2, 第1个丑数*2
第3个丑数是 1 * 3 = 3, 第1个丑数*3
第4个丑数是 2...
分类:
其他好文 时间:
2015-10-18 01:16:46
阅读次数:
189
题目描述: 对于一个无序数组A,请设计一个算法,求出需要排序的最短子数组的长度。 给定一个整数数组A及它的大小n,请返回最短子数组的长度。 测试样例: [1,5,3,4,2,6,7],7 返回:4 1 /* 2 这个题在牛客网上的讲解我感觉是有点问题的, 3 ...
分类:
编程语言 时间:
2015-10-16 13:16:24
阅读次数:
240
JVM是虚拟机,也是一种规范,他遵循着冯·诺依曼体系结构的设计原理。冯·诺依曼体系结构中,指出计算机处理的数据和指令都是二进制数,采用存储程序方式不加区分的存储在同一个存储器里,并且顺序执行,指令由操作码和地址码组成,操作码决定了操作类型和所操作的数的数字类型,地址码则指出地址码和操作数。从dos到...
分类:
其他好文 时间:
2015-10-02 11:19:00
阅读次数:
358
最近在学习([美] Mivhael McMillan著) 这本书,对JavaScript的特性和数据结构都有了进一步的了解和体会。学习之余,也进行了相应的练习,题目难度不大,但是对所学知识的巩固十分有帮助,所以在这里和大家做一个分享。注:题目主要来源于牛客网,这是一个不错的网站,对于代码的学习和自我...
分类:
Web程序 时间:
2015-09-23 16:52:31
阅读次数:
273
题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。
输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。代码实现class Solution {
public:
vector Permutation(string...
分类:
其他好文 时间:
2015-09-21 09:13:34
阅读次数:
187
题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。将数字转化为字符串,然后对字符串进行快速排序class Solution {
public:
string PrintMinNumber(vector numbers) {
string r...
分类:
编程语言 时间:
2015-09-21 01:41:15
阅读次数:
276
题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,直接使用sort排序,然后返回前k个数:class Solution {
public:
vector GetLeastNumbers_Solution(vector input, int k) {
sort(input.begi...
分类:
其他好文 时间:
2015-09-21 01:40:04
阅读次数:
113
问题描述HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。你会不会被他忽悠住?算法分析有一个te...
分类:
编程语言 时间:
2015-09-21 01:38:25
阅读次数:
173
题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。算法描述打擂算法:多的留下,少的走
先找出数最多的,然后找有多少个数,最后判断数目是否超过了一半,
θ(n)时间复杂度代码实现class Solution {
public:
int Mor...
分类:
编程语言 时间:
2015-09-21 01:37:53
阅读次数:
286
题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。算法描述使用递归,分别去将当前节点的左右子树变成双向链表,然后获取左边链表的最后一个元素,当前元素的左指针指向它,它的右指针指向当前元素;右边链表的第一个元素,它的左指针指向当前元素,当前元素的右指针指向它;然后从当前元素开始,不断从左边找,找到第一个元素,返回此元素的指针。总结...
分类:
其他好文 时间:
2015-09-19 06:15:01
阅读次数:
135