面試題6 倒序輸出鍊錶

2021-10-02 19:35:34 字數 528 閱讀 5903

思路有兩個:

1、利用遞迴思路,這樣比較耗時,但是省空間。

2、既然能夠使用遞迴,就能使用棧來操作。

首先要涉及到鍊錶的定義和初始化:

struct linknode};

intmain()

這裡需要註明:nullptr是c++11才開始使用的關鍵字,為了和c中的null區別。c中的null表明的是乙個void指標,c++中的null表明數字0,但是有時卻可以表示乙個void指標,所以為了區分兩者,c++11中開始只用關鍵字nullptr表示乙個空指標,null就表示0(int)。

**實現兩種思路:

//遞迴思路

void

find

(linknode *l)

//使用棧來實現

void

find1

(linknode *l)

while

(!s.

empty()

)}

1 單向鍊錶(建立,輸出,倒序輸出,轉置)

1.建立 通過頭尾指標建立乙個單向鍊錶 2.輸出 3.倒序輸出 遞迴 4.轉置 用三個指標,乙個被指向p1,乙個指向p2,乙個斷開p3 實現 include include typedef struct node list 建立 list createlist else 尾的下乙個等於temp 尾移...

鍊錶操作面試題

include using namespace std struct node int value node next node find node phead,int t 一 刪除鍊錶中某個節點 思路 先找到要刪除的節點位置 bool deletet node phead,int t else e...

鍊錶的面試題

1 比較順序表和煉表的優缺點,它們分別在什麼場景下使用?1 順序表支援隨機訪問,單鏈表不支援隨機訪問。2 順序表插入 刪除資料效率很低,時間複雜度為o n 除尾插和尾刪 單鏈表插入 刪除效率更高,時間複雜度為o 1 3 順序表的cpu高速緩衝效率更高,單鏈表cpu高速緩衝效率低。2 列印單向鍊錶 v...