演算法題(說明:這些題就不是什麼花樣了,考的是你的基礎知識怎麼樣。再聰明而沒有實學的人都將會被這些題所淘汰。)
1.鍊錶和陣列的區別在**?
2.編寫實現鍊錶排序的一種演算法。說明為什麼你會選擇用這樣的方法?
3.編寫實現陣列排序的一種演算法。說明為什麼你會選擇用這樣的方法?
4.請編寫能直接實現strstr()函式功能的**。
5.編寫反轉字串的程式,要求優化速度、優化空間。
6.在煉表裡如何發現迴圈鏈結?
7.給出洗牌的乙個演算法,並將洗好的牌儲存在乙個整形陣列裡。
8.寫乙個函式,檢查字元是否是整數,如果是,返回其整數值。(或者:怎樣只用4行**編寫出乙個從字串到長整形的函式?)
9.給出乙個函式來輸出乙個字串的所有排列。
10.請編寫實現malloc()記憶體分配函式功能一樣的**。
11.給出乙個函式來複製兩個字串a和b。字串a的後幾個位元組和字串b的前幾個位元組重疊。
12.怎樣編寫乙個程式,把乙個有序整數陣列放到二叉樹中?
13.怎樣從頂部開始逐層列印二叉樹結點資料?請程式設計。
14.怎樣把乙個鍊錶掉個順序(也就是反序,注意鍊錶的邊界條件並考慮空鍊錶)?
一堆一堆又一堆 合併果子
題目描述 在乙個果園裡,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看出,所有的果子經過n 1次合併之後,就只剩下一堆了。多多在合併果子時總共消耗的體力等於每次合併所耗...
排序演算法一 堆排序
一 演算法介紹 堆排序 heapsort 是指利用堆積樹 堆 這種 資料結構 所設計的一種 排序演算法 它是選擇排序的一種。可以利用 陣列的特點快速定位指定索引的元素。堆分為大根堆和小根堆,是 完全二叉樹 大根堆的要求是每個節點的值都不大於其父節點的值,即 a parent i a i 在陣列的非降...
一堆經典二分題
蒟蒻考前攢人品 二分答案的應用範圍 1.一些明顯的字眼 最小值最大或最大值最小 2.沒有什麼明顯的方法好來解決,且答案是滿足可二分性的,即答案變大變小check起來性質會不一樣 二分的思想很簡單,時間複雜度為log級的,有時候可以看資料範圍來想方法,大概幾十萬或百萬的資料就一般是log級複雜度 下面...