堆串基礎 C語言

2021-10-01 07:37:04 字數 1259 閱讀 1956

題目:

時間複雜度為任意空間複雜度為任意

**:

/*3-7*/

#include

#include

typedef

struct

hstring;

void

create

(hstring *h)

void

insert

(hstring *s,

int pos,hstring *t)

if(temp==

null

)int i;

for(i=

0;i)for

(i=0

;ilen;i++

)for

(i=pos;ilen;i++

) s->len+

=t->len;

free

(s->ch)

; s->ch=temp;

}void

delete

(hstring *s,

int pos,

int number)

for(i=

0;ilen-number;i++

)free

(s->ch)

; s->ch=temp;

}void

view

(hstring *h)

intmain()

運**況:

輸入--串h1的長度:

5輸入--串h1:

abcde

輸出--堆串的長度為:

5輸出--堆串為:abcde

輸入--串h2的長度:

3輸入--串h2:

***輸出--堆串的長度為:

3輸出--堆串為:***

進行--堆串h2插入h1

輸入--插入位置:

2輸出--堆串的長度為:

8輸出--堆串為:ab***cde

進行--刪除操作...

輸入--開始刪除的起始位置:

3輸入--刪除的位數:

3輸出--堆串的長度為:

8輸出--堆串為:abcde

program ended with exit code:

0

堆儲存串的實現(c語言)

1.str.h ifndef str h define str h typedef struct str str newstr char str void destroystr str s void clearstr str s int strcompare str s,str t int strc...

C語言字串 堆記憶體

是程序的乙個記憶體段 text data bss heap stack 由程式設計師手動管理 特點 足夠大,缺點 使用麻煩1 隨著程式的複雜,資料量變多 2 其它記憶體段的申請 釋放不受控制,堆記憶體的申請和釋放受控制注意 c語言中沒有控制堆記憶體的語句,只能使用c標準庫提供的函式 include ...

堆排(大頂堆C語言)

堆排 大頂堆c語言 借鑑的別人的 自己做了一些注釋便於理解 include include 這是乙個大頂堆,實現從小到大排序 堆頂序號從1開始編號!void swap int k int i int j 交換堆頂和最後乙個節點的資料 具體使用時i 1,即第乙個節點下標,j就是最後乙個節點的下標 vo...