- 相關推薦
微軟算法面試題
1、反轉一個鏈表。循環算法。
1 List reverse(List l) {
2 if(!l) return l;
3 list cur = l.next;
4 list pre = l;
5 list tmp;
6 pre.next = null;
7 while ( cur ) {
8 tmp = cur;
9 cur = cur.next;
10 tmp.next = pre
11 pre = tmp;
12 }
13 return tmp;
14 }
2、反轉一個鏈表。遞歸算法。
1 List resverse(list l) {
2 if(!l || !l.next) return l;
3
4 List n = reverse(l.next);
5 l.next.next = l;
6 l.next=null;
7 }
8 return n;
9 }
3、廣度優先遍歷二叉樹。
1 void BST(Tree t) {
2 Queue q = new Queue();
3 q.enque(t);
4 Tree t = q.deque();
5 while(t) {
6 System.out.println(t.value);
7 q.enque(t.left);
8 q.enque(t.right);
9 t = q.deque();
10 }
11 }
----------------------
1class Node {
2 Tree t;
3 Node next;
4 }
5class Queue {
6 Node head;
7 Node tail;
8 public void enque(Tree t){
9 Node n = new Node();
10 n.t = t;
11 if(!tail){
12 tail = head = n;
13 } else {
14 tail.next = n;
15 tail = n;
16 }
17 }
18 public Tree deque() {
19 if (!head) {
20 return null;
21 } else {
22 Node n = head;
23 head = head.next;
24 return n.t;
25 }
26}
4、輸出一個字符串所有排列。注意有重復字符。
1char[] p;
2void perm(char s[], int i, int n){
3 int j;
4 char temp;
5 for(j=0;j<n;++j){< p="">
6 if(j!=0 && s[j]==s[j-1]);
7 elseif(s[j]!='@'){
8 p[i]=s[j];
9 s[j]='@';
10 if(i==n-1){
11 p[n]=' 主站蜘蛛池模板: 欧美日韩高清在线观看一区二区 | 15yc宅男影院在线观看 | 一级片aaa| 夜色影院在线观看 | 在线观看国产高清免费不卡黄 | 日韩理论在线观看 | 成人人观看的免费毛片 | 九色福利视频 | 最近中文字幕完整视频大全版 | 亚洲人成人77777网站不卡 | 九九九热在线精品免费全部 | 久久久久久一级毛片免费野外 | 午夜视频a| 色天使亚洲| 性生大片一级毛片免费观看 | 国产免费网| 在线视频亚洲 | 大伊香蕉在线精品视频人碰人 | 大伊香蕉精品一区视频在线 | 国产精品一区二区三区免费视频 | 欧美精品一区视频 | 黄色在线免费 | 有色视频在线观看 | 精品九九视频 | 羞羞的影院 | 国产黄色片在线看 | xxxx69中国hd老师18 | 色黄污在线看黄污免费看黄污 | 国产成人精品午夜视频' | 午夜精品网 | 亚洲区小说区图片区qvod伊 | 国产一区二区在线观看视频 | m男亚洲一区中文字幕 | 91香蕉国产 | 网站免费满18成年在线观看 | 亚洲精品无码专区在线播放 | 天堂网一区二区 | 中文一级黄色片 | 窝窝视频成人影院午夜在线 | 国产一精品一av一免费爽爽 | 久久窝窝国产精品午夜看15 |