《資料結構教程》(李春葆 主編)課後習題 2 4

2021-09-06 14:25:34 字數 869 閱讀 6655

【2.4】

設計乙個演算法,將乙個帶頭節點的資料域依次為a1,a2,……,an(n>=3)的單鏈表的所有節點逆置,即第乙個節點的資料域變為an,……,最後乙個節點的資料域變為a1。

思路:我是直接在原煉表上操作,當然也可以建立乙個陣列儲存鍊錶的資料,然後再倒序放回原鍊錶。

答案

1

void invert(linklist *&head) //

逆置煉表處理

215 }

測試**

1

//鍊錶逆置2//

思路是遍歷原鍊錶,不斷將當前節點以頭插法插到head頭節點後面,以此實現逆置

34 #include 5

using

namespace

std;

6#define max 10

7struct

linklist;

11void createlinklist(int a,int n,linklist* &head) //

建立乙個鍊錶,把a陣列中的資料依次放進去

1221}22

void display(linklist *&head) //

輸出鍊錶

2329 cout<31void invert(linklist *&head) //

逆置煉表處理

《資料結構教程》(第5版)李春葆 學習筆記(二)

include include includeusing namespace std typedef char elemtype 宣告鏈棧的型別 typedef struct linknodelinkstnode 初始化棧 void initstack linkstnode s 銷毀棧 void d...

《資料結構教程》(第5版)李春葆 學習筆記(四)

include includeusing namespace std typedef char elemtype const int maxsize 100 typedef struct nodebtnode 建立二叉樹 void createbtree btnode b,elemtype str ...

資料結構教程 李春葆版(總結)之排序 交換排序

本文的主要內容來自資料結構教程 李春葆版,由 你是木頭人 博主進行總結。性質 兩兩比較待排序元素的關鍵字,發現兩個元素的次序相反時即進行交換,直到沒有反序的元素為止。氣泡排序 穩定 typedef struct rectype void bubblesort rectype r,int n rect...