開心IT面試題 單鏈表排序 反轉

2021-06-19 07:05:07 字數 639 閱讀 1883

一、單鏈表排序

仿照基於陣列的氣泡排序演算法

node* sorting_linklist(node* node)

node* result;

int temp = 0;

int len = length_linklist(node);

result = node;

for(int j = 0; j < len; j++)

result = result->next;}}

return node;

}

二、單鏈表反轉

node* reverse_linklist(node* node)

node *result, *s;

result=(node*)malloc(sizeof(node));

result->next = null;

int len = length_linklist(node);

for(int i = 0; i < len; i++)

return result;

}

注:**中所用到的計算單鏈表長度的length_linklist()函式請看「

單鏈表基礎

面試題 單鏈表反轉

問題 定義乙個函式,輸入乙個鍊錶的頭結點,反轉該鍊錶並輸出反轉後鍊錶的頭結點。一 非遞迴演算法 假設有鍊錶a b c d e f g。在反轉鍊錶過程中的某一階段,其鍊錶指標指向為 a b c d e f g。也就是說在結點d之前的所有結點都已經反轉,而結點d後面的結點e開始的所有結點都沒有反轉。這樣...

鏈表面試題 反轉單鏈表

反轉乙個單鏈表。示例 輸入 1 2 3 4 5 null 輸出 5 4 3 2 1 null解決方案 頭插法開闢新鍊錶並逐個讀取舊鍊錶,頭插進新鍊錶,這樣新的鍊錶與原鍊錶的結構就是反的,需要借助輔助空間 definition for singly linked list.struct listnod...

鏈式儲存面試題 單鏈表反轉

出現位置 第一輪基礎類筆試或技術一面 難度係數 中 面試題目 實現乙個單鏈表的反轉。例如 10 9 8 7 6 5 4 3 2 1 反轉後應該為 1 2 3 4 5 6 7 8 9 10 要求10分鐘內寫出 注意 風格及時間複雜度 空間複雜度。考點分析 1 基本概念 鍊錶基礎,規範問題,健壯性問題。...