随笔分类 -  刷题

摘要:面试题18.1:编写一个函数,将两个数字相加。不得使用+或其他算数运算符。 面试题18.2:编写一个方法,洗一副牌。要求做到完美洗牌,换言之,这副牌52!中排列组合出现的概率相同。假设给定一个完美的随机数发生器。 面试题18.3:编写一个方法,从大小为n的数组中随机选出m个整数。要求每个元素被选中的 阅读全文
posted @ 2016-10-18 20:58 tonglin0325 阅读(415) 评论(0) 推荐(0) 编辑
摘要:面试题17.1:编写一个函数,不用临时变量,直接交换两个数。 思路:使用差值或者异或 面试题17.2:设计一个算法,判断玩家是否赢了井字游戏。 面试题17.3:设计一个算法,算出n阶乘有多少个尾随零。 面试题17.4:编写一个方法,找出两个数字中最大的那一个。不得使用if-else或其他比较运算符。 阅读全文
posted @ 2016-10-14 17:16 tonglin0325 阅读(326) 评论(0) 推荐(0) 编辑
摘要:package cc150.thread_lock; public class RunnableThreadExample implements Runnable{ public int count = 0; public static void main(String[] args) { // TODO 自动生成的方法存根 RunnableThreadExample i... 阅读全文
posted @ 2016-10-14 11:04 tonglin0325 阅读(213) 评论(0) 推荐(0) 编辑
摘要:package cc150.java; import java.util.Iterator; public class CircularArray { public static void main(String[] args) { //实现一个类似数组的数据结构,可以进行高效的旋转 // TODO 自动生成的方法存根 CircularArray ca... 阅读全文
posted @ 2016-09-30 22:32 tonglin0325 阅读(263) 评论(0) 推荐(0) 编辑
摘要:面试题11.1:给定两个排序后的数组A和B,其中A的末端有足够的缓冲空间容纳B。编写一个方法,将B合并入A并排序。 面试题11.2:编写一个方法,对字符串数组进行排序,将所有变位词排在相邻的位置。 面试题11.3:给定一个排序后的数组,包含n个整数,但这个数组已被旋转过很多次,次数不详。请编写代码找 阅读全文
posted @ 2016-09-29 20:43 tonglin0325 阅读(239) 评论(0) 推荐(0) 编辑
摘要:面试题9.1:有个小孩正在上楼梯,楼梯有n个台阶,小孩一次可以上1阶、2阶或者3阶。实现一个方法,计算小孩有多少种上楼梯的方式。 思路:第4个数是前三个数之和 注意:能不能使用递归,能不能建立一个很大的数组来存储传递的参数(因为可能有空间的限制),要%1000000007防止超出范围 面试题9.2: 阅读全文
posted @ 2016-09-24 22:38 tonglin0325 阅读(283) 评论(0) 推荐(0) 编辑
摘要:面试题7.2:三角形的三个顶点上各有一只蚂蚁。如果蚂蚁开始沿着三角形的边爬行,两只或三只蚂蚁撞到一起的概率有多大?假定每只蚂蚁会随机选一个方向,每个方向被选到的几率相等,而且三只蚂蚁的爬行速度相同。 面试题7.3:给定直角坐标系上的两条线,确定这两条线会不会相交。 面试题7.4:编写方法,实现整数的 阅读全文
posted @ 2016-09-24 22:30 tonglin0325 阅读(317) 评论(0) 推荐(0) 编辑
摘要:面试题6.1:有20瓶药丸,其中19瓶装有1克/粒的药丸,余下一瓶装有1.1克/粒的药丸。给你一台称重精准的天平,怎么找出比较重的那瓶药丸?天平只能用一次。 思路:第1瓶取1颗,第2瓶取2颗。。。。最后是(总重-210克)/0.1=第几瓶 面试题6.2:有8×8棋盘,其中对角的角落上,两个方格被切掉 阅读全文
posted @ 2016-09-22 15:36 tonglin0325 阅读(792) 评论(0) 推荐(0) 编辑
摘要:面试题5.1:给定两个32位的整数N与M,以及表示比特位置的i与j。编写一个方法,将M插入N,使得M从N的第j位开始,到第i位结束。假定从j位到i位足以容纳M,也即若M=10011,那么j与i之间至少可容纳5个位。例如,不可能出现j=3和i=2的情况,因为第3位和第2位之间放不下M。 输入:N=10 阅读全文
posted @ 2016-09-20 15:34 tonglin0325 阅读(313) 评论(0) 推荐(0) 编辑
摘要:面试题4.1:实现一个函数,检查二叉树是否平衡。在这个问题中,平衡树的定义如下:任意一个结点,其两颗子树的高度差不超过1。 思路:两个方法,第一种速度较快 面试题4.2: 给定有向图,设计一个算法,找出两个结点之间是否存在一条路径。 思路:解法中使用了递归以及深度遍历,并没有通过栈来优化空间的占用( 阅读全文
posted @ 2016-09-16 21:33 tonglin0325 阅读(313) 评论(0) 推荐(0) 编辑
摘要:面试题3.1:描述如何只用一个数组来实现三个栈。 方法1:固定分割 方法2:弹性分割(较难) 面试题3.2:请设计一个栈,除pop与push方法,还支持min方法,可返回栈元素中的最小值。push、pop和min三个方法的时间复杂度必须为O(1)。——《Leetcode》155. Min Stack 阅读全文
posted @ 2016-09-14 16:42 tonglin0325 阅读(286) 评论(0) 推荐(0) 编辑
摘要:面试题2.1:编写代码,移除未排序链表中的重复结点 进阶:如果不得使用临时缓冲区,该怎么解决? 面试题2.2:实现一个算法,找出单向链表中倒数第k个结点。——《剑指Offer》面试题15 (找出) &《Leetcode》removeNthNode (移除) 面试题2.3:实现一个算法,删除单向链表中 阅读全文
posted @ 2016-09-12 11:39 tonglin0325 阅读(321) 评论(0) 推荐(0) 编辑
摘要:面试题1.1:实现一个算法,确定一个字符串的所有字符是否全都不同。假使不允许使用额外的数据结构,又该如何处理? 注意:ASCII字符共有255个,其中0-127的字符有字符表 第一种解法:是《CC150》里面的解法 第二种解法:先排序,然后通过异或运算判断是否有重复的字符 面试题1.2:实现void 阅读全文
posted @ 2016-09-06 09:18 tonglin0325 阅读(306) 评论(0) 推荐(0) 编辑
摘要:1.把一个字符串转换成整数(看面试题50)——《剑指Offer》P29 2.求链表中的倒数第k个结点(看面试题15)——《剑指Offer》P30 3.实现Singleton模式——《剑指Offer》P48 参考:http://www.cnblogs.com/tonglin0325/p/5196818 阅读全文
posted @ 2016-05-25 17:10 tonglin0325 阅读(721) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示