自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

twostarxx的博客

https://github.com/twostarxx

  • 博客(11)
  • 收藏
  • 关注

原创 《剑指offer》面试题43:n个骰子的点数

题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出k的所有可能的值出现的概率。思路:基于循环求骰子点数,时间性能好。在一次循环中,第一个数组中的第n个数字表示骰子和为n出现的次数。在下一次循环中,我们加上一个新的骰子,此时和为n的骰子出现的次数等于上一次循环中骰子点数和为n-1、n-2、n-3、n-4、n-5和n-6的次数的总和,所以我们把另一个数组的第n个数字设为前一个数组...

2018-05-30 15:41:23 501

原创 《剑指offer》面试题42:翻转单词顺序VS左旋转字符串

题目一:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student.",则输出"student. a am I"。思路:以"I am a student."为例,翻转整个句子。例子为,".tneduts a ma I"。以空格为界,翻转单个单词。需要辅助方法去翻转void ...(char[], int st...

2018-05-28 18:22:56 170

原创 《剑指offer》面试题41:和为s的两个数字 VS 和为s的连续正数序列

题目一:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,输出任意一对即可。思路:以{1, 2, 4, 7, 11, 15}和15为例进行讲解。定义两个指针,第一个指向0,第二个指向最后一个。...

2018-05-28 17:10:34 186

原创 《剑指offer》面试题38:数组在排序数组中出现的次数

题目:统计一个数字在排序数组中出现的次数。例如输入排序数组{1, 2, 3, 3, 3, 3, 4, 5}和数字3,由于3在这个数组中出现了4此,因此输出4。思路:因为输入的数组为排序的,第一反应是二分查找。先二分查找k第一次出现的位置,再二分查找k最后出现的位置,进而位置相减+1。public int getNumK(int[] nums, int k) { int first =...

2018-05-25 18:29:02 160

原创 《剑指offer》面试题36:数组中的逆序对

题目:在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。思路:归并排序思想。...

2018-05-22 21:14:50 254

原创 《剑指offer》面试题37:两个链表的第一个公共结点

题目:输入两个链表,找出它们的第一个公共结点。思路:计算两个链表的长度。用 k 走完长链表多出的长度,然后长短链表同时遍历,如果两个index相同,则该点为第一个公共结点。public static ListNode FistCommonNode(ListNode node1, ListNode node2) { if (node1 == node2) return node1; int ...

2018-05-17 17:50:02 164

原创 《剑指offer》面试题35:第一个只出现一次的字符

题目:在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出'b'。思路:用哈希表记录每个char出现的次数。顺序哈希表用 LinkedHashMap。public char FirstNotRepeatChar(String str) { HashMap<Character, Integer> map = new LinkedHashMap<Charact...

2018-05-17 17:13:09 138

原创 《剑指offer》面试题34:丑数

题目:我们把只包含因子2、3和5的数称作丑数(Ugly Number)。求按从小到大的顺序的第1500个丑数。例如1、2、3、4、5都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做第一个丑数。...

2018-05-17 16:58:41 141

原创 《剑指offer》面试题33:把数组排成最小的数

题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3, 32, 321},则打印出这3个数字能排成的最小数字321323。理论基础:数组排列后拼接的数字最小,则内部任意两个拼接的数字最小。因此,只需要比较数组中任意两个的大小。思路:外部采用快排(logn),进行比较;内部的比较采用 (str1+str2) ? (str2+str1)。标...

2018-05-16 17:49:34 139

原创 《剑指offer》面试题32:从1到n整数中k出现的个数

题目:输入一个整数m,求从1到n这n个整数的十进制表示中k出现的次数。例如输入一个12,从1到12这些整数中包含1的数字有1,10,11和12,1一共出现了5次。思路:分别统计k出现在个位,十位,百位,千位...的个数。n = 2593, x = 5 为例来解释如何得到数学公式。从 1 至 2593中,数字 5 总计出现了 813 次,其中有 259次出现在个位,260次出现在十位,294次出现在...

2018-05-16 15:41:48 905

原创 《剑指offer》面试题31:连续子数组的最大和

题目:输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。思路一:对所有的数进行遍历。先判断之前的和是否为负,如果为负,置为0。加上当前值。判断是否为最大。思路二:动态规划。以第i个数结尾的最大和 = 第i个数 + 以第i-1个数结尾的最大和。(递归用循环实现,所以思路一实现与思路一相同)public int fin...

2018-05-12 18:35:23 137

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除