摘要: 内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 给一个浮点数序列,取最大乘积连续子串的值,例如 -2.5,4,0,3,0.5,8,-1,则取出的最大乘积连续子串为3,0.5,8。也就是说,上述数组中,3 0.5 8这3个数的乘积30.58=12是最大的,而且是连续 阅读全文
posted @ 2018-01-17 17:47 icychen 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 拿破仑席卷欧洲大陆之后,代表自由,平等,博爱的竖色三色旗也风靡一时。荷兰国旗就是一面三色旗(只不过是横向的),自上而下为红白蓝三色。 该问题本身是关于三色球排序和分类的,由荷兰科学家Dijkstra提出。由于问题中的 阅读全文
posted @ 2018-01-11 19:32 icychen 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。 分析与解法 最容易想到的办法是从头扫描这个数组,每碰到一个偶数,拿出这个数字,并把位于这 阅读全文
posted @ 2018-01-11 19:22 icychen 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值,要求时间复杂度为O(n)。 例如输入的数组为1, -2, 3, 10, -4, 7, 阅读全文
posted @ 2018-01-11 18:57 icychen 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 输入两个整数n和sum,从数列1,2,3.......n 中随意取几个数,使其和等于sum,要求将其中所有的可能组合列出来。 分析与解法 解法一 注意到取n,和不取n个区别即可,考虑是否取第n个数的策略,可以转化为一 阅读全文
posted @ 2018-01-11 18:40 icychen 阅读(168) 评论(0) 推荐(0) 编辑
摘要: Given a list of sorted characters letters containing only lowercase letters, and given a target letter target, find the smallest element in the list t 阅读全文
posted @ 2018-01-11 15:57 icychen 阅读(105) 评论(0) 推荐(0) 编辑
摘要: Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times. You may assume that the 阅读全文
posted @ 2018-01-11 15:44 icychen 阅读(86) 评论(0) 推荐(0) 编辑
摘要: Given a Binary Search Tree (BST), convert it to a Greater Tree such that every key of the original BST is changed to the original key plus sum of all 阅读全文
posted @ 2018-01-11 10:44 icychen 阅读(110) 评论(0) 推荐(0) 编辑
摘要: We have two special characters. The first character can be represented by one bit 0. The second character can be represented by two bits (10 or 11). N 阅读全文
posted @ 2018-01-11 10:19 icychen 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 内容全部来自编程之法:面试和算法心得一书,实现是自己写的使用的是java 题目描述 输入一个数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。 要求时间复杂度是O(N)。如果有多对数字的和等于输入的数字,输出任意一对即可。 例如输入数组1、2、4、7、11、15和数字15。由于4 阅读全文
posted @ 2018-01-10 18:06 icychen 阅读(195) 评论(0) 推荐(0) 编辑