測試空間旗下大頭針
出品
今天是端午節,也是c語言輔導的最後一課.講了有關排序和棧的內容,特別是棧,企業有是很多時候都會問到這塊知識.
c語言這塊內容,企業很容易考進製轉換.為什麼呢?記得以前學習組合語言的時候最經常做的事情就是進製的轉換,把10進製與2進製,10進製與16進製制,10進製與8進製的轉換.了解計算機的人都知道電腦中硬體只能處理2進製資料,而我們一般輸入的資料都是10進製,硬體是沒有辦法處理的.這樣只能通過把10進製轉換成2進製的方式來解決這個問題.
轉換的方式有好多種,今天介紹一下用棧的方式來實現.剛好上次blog說過有關棧的問題.
首先由結構體來定義乙個順序棧.(順序棧用途是廣泛的)
#include
#include
#define stack_init 10 /*儲存空間初始分配量*/
#define stack_add 2 /*儲存空間分配增量*/
typedef struct sqstack
stack;
/*初始化棧是可是使用棧的第一步哦*/
int initstack(stack *s)
幾個基本操作:
/*壓棧*/
int push(stack *s,int e)
*((*s).top)++=e;
return 1;
}int pop(stack *s,int *e)
//什麼是空棧呢?
int stackempty(stack s)
//有了前面一些關於棧的基本操作,那麼下面我們來實現進製轉換.
void change()
while(!stackempty(s))
printf("/n");
}void main()
好了,感覺如果讀懂了這道題目,一些有關棧的基本的筆試問題,應該沒有多大問題.
以後會陸續收集相關的筆試題目.
關於鍊錶和2級指標:
c程式單鏈表面試題詳解
資料結構筆試題目
1 c 編成求二叉樹的深度 int bintreedepth link head 2 排序二叉樹插入乙個節點或雙向鍊錶的實現 排序二叉樹 左小於根,根小於右。左右又分別是排序二叉樹。前序遍歷 根左右 中序遍歷 左根右 後序遍歷 左右根 排序二叉樹插入乙個結點 大於左,往右找,小於右往左找,遞迴實現。...
資料結構筆試題
一 如何判斷乙個單鏈表是有環的?注意不能用標誌位,最多只能用兩個額外指標 struct node bool check const node head return false 無環 true 有環 一種o n 的辦法就是 搞兩個指標,乙個每次遞增一步,乙個每次遞增兩步,如果有環的話兩者必然重合,反...
筆試題之資料結構
時間複雜度 整個演算法的執行時間與基本操作重複執行的次數成正比。參考kmp演算法,該演算法的時間複雜度為q n 通常,模式串的長度n比主串的長度m要小的多 穩定排序 排序前後,數值的相對前後位置不變的為穩定排序,否則為不穩定排序。1 簡單排序,時間複雜度o n的平方 不穩定 2 快速排序,時間複雜度...