2016年7月2日

翻转单词顺序VS左旋转字符串

摘要: 题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。例如输入“I am a student.”,则输出“student. a am I”。 思路:首先将整个句子按字符翻转,然后再将其中每个单词的字符旋转。 题目:定义字 阅读全文

posted @ 2016-07-02 22:22 三颗心 阅读(494) 评论(1) 推荐(0) 编辑

和为S的两个数字VS和为S的连续正数序列

摘要: 题目:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,输出任意一对即可。 思路:最初我们找到数组的第一个数字和最后一个数字。首先定义两个指针,第一个指针指向数组的第一个(也就是最小的)数字,第二个指针指向数组的最后一个(也就是最大的)数字。当两 阅读全文

posted @ 2016-07-02 21:33 三颗心 阅读(716) 评论(0) 推荐(0) 编辑

数组中只出现一次的数字

摘要: 题目描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 思路:先看一个简单的实例,若是找数组中只出现一次的一个数,其它的数都出现两次,直接对数组元素进行位异或就可以得到数组中只出现一次的一个数。本题中,找数组中只出现一次的两个数,则要将数组分成2个子数 阅读全文

posted @ 2016-07-02 20:09 三颗心 阅读(798) 评论(0) 推荐(0) 编辑

判断一个二叉树是否是平衡二叉树

摘要: 题目:判断一个二叉排序树是否是平衡二叉树 思路:利用递归判断左右子树的深度是否相差1来判断是否是平衡二叉树。 阅读全文

posted @ 2016-07-02 18:13 三颗心 阅读(2736) 评论(0) 推荐(0) 编辑

二叉树的深度

摘要: 题目:输入一棵二叉树的根节点,求该树的深度。从根节点到叶子结点一次经过的结点形成树的一条路径,最长路径的长度为树的深度。根节点的深度为1。 思路:如果根节点为空,则深度为0,返回0,递归的出口,如果根节点不为空,那么深度至少为1,然后我们求他们左右子树的深度,比较左右子树深度值,返回较大的那一个,通 阅读全文

posted @ 2016-07-02 15:48 三颗心 阅读(310) 评论(0) 推荐(0) 编辑

数字在排序数组中出现的次数

摘要: 题目:统计一个数字在排序数组中出现的次数。例如,输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在这个数组中出现了4次,因此输出4. 思路1:该解法是最直观的解法,可以先使用二分查找先找到这个元素,然后分别向左和向右遍历,把左右相同的元素的个数都计算出来。 思路2:使用二分查找的拓展, 阅读全文

posted @ 2016-07-02 13:58 三颗心 阅读(957) 评论(0) 推荐(0) 编辑

导航