本月博客排行
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- e_e
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- sichunli_030
- xyuma
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- lzyfn123
- zhanjia
- forestqqqq
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- johnsmith9th
- kristy_yy
- lich0079
- jveqi
- java-007
- sunj
最新文章列表
微软等数据结构与算法面试100题 第十六题
第十六题
题目:
输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。
分析:
这道题主要考察的是二叉树的广度优先周游,比较简单。就是使用队列(queue)作为辅助实现。
#include<iostream>
#include<queue>
using namespace std;
struct node
...
微软等数据结构与算法面试100题 第十七题
第十七题
题目:
在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。
分析:这道题比较简单,其实和哈希表的原理差不多,就是创建一个表,储存每个字符出现的次数,然后遍历这个表直到找到第一次出现的一次的那个字符。
关于哈希表的大小,因为ASCII表的大小是255,因此数组的长度为255。
代码其实很简单,参考了链接:http://www. ...
微软等数据结构与算法面试100题 第十三题
第十三题
题目:输入一个单向链表,输出该链表中倒数第k个结点。
这道题比较简单,就是对于这个链表,定义两个指针head1 head2,然后让head1向前走k-1个位置以后,head2和head1同时向前走,知道head1知道NULL指针,head2的即为倒数第k个指针。
代码:
#include<iostream>
using namespace std ...
微软等数据结构与算法面试100题 第十二题
第十二题
题目:求1+2+…+n, 要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句
(A?B:C)。
说明:本文对两种方法进行汇总,参考http://blog.csdn.net/daxiamit/article/details/7611088 中第12题目中指出美国阿财的解答 和 July原先给出的解答。
因此这里在写文章 ...
微软等数据结构与算法面试100题 第十一题
第十一题
题目:
求二叉树中节点的最大距离...
如果我们把二叉树看成一个图,父子节点之间的连线看成是双向的, 我们姑且定义"距离"为两节点之间边的个数。 写一个程序, 求一棵二叉树中相距最远的两个节点之间的距离。
分析:
对本题而言,有上面两种情况,一个是最大长度的节点里面没有根节点,一个是有根节点。
如何求解树中节点的最大距离?--> ...
微软等数据结构与算法面试100题 第十题
第十题
翻转句子中单词的顺序。 题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。
句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。 例如输入“I am a student.”,则输出“student. a am I”。
分析:
可以根据空格符将单词分开,然后针对每个单词进行操作,string类型的有很多库函数,比如可以实现分割stri ...
微软等数据结构与算法面试100题 第十题
第十题
翻转句子中单词的顺序。 题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。
句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。 例如输入“I am a student.”,则输出“student. a am I”。
分析:
可以根据空格符将单词分开,然后针对每个单词进行操作,string类型的有很多库函数,比如可以实现分割stri ...
微软等数据结构与算法面试100题 第九题
第九题
判断整数序列是不是二元查找树的后序遍历结果 题目:输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。 如果是返回true,否则返回false。
例如输入5、7、6、9、11、10、8,由于这一整数序列是如下树的后序遍历结果:
8 / \ 6 10 / \ / \ 5 7 9 11 因此返回true。 ...