日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

串的块链存储c语言栈,小蚂蚁学习数据结构(18)——串的块链的代码实现

發(fā)布時間:2025/3/11 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 串的块链存储c语言栈,小蚂蚁学习数据结构(18)——串的块链的代码实现 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

感覺上塊鏈的代碼實(shí)現(xiàn)比數(shù)組的代碼實(shí)現(xiàn)要難一些,估計因為數(shù)組的實(shí)現(xiàn)書上有偽代碼,而塊鏈連偽代碼都木有,不過歸根到底還是水平不行……哭瞎……╥﹏╥...

/*

數(shù)據(jù)結(jié)構(gòu)C語言版?串的塊鏈存儲表示和實(shí)現(xiàn)

*/

#?include?

#?include?

#?include?

/*?鏈表元素結(jié)構(gòu)體?*/

typedef?struct?List

{

//數(shù)據(jù)域

char?data;

//指針域

struct?List?*?pNext;

}List,?*?PLIST;

/*?串結(jié)構(gòu)體?*/

typedef?struct?String

{

PLIST?pHead,?pTail;

int?length;

}STRING,?*?PSTRING;

/*?函數(shù)前置聲明?*/

/*?初始化一個串?*/

void?InitString(?PSTRING?);

/*?為一個串賦值?*/

bool?StrAssign(?PSTRING,?char?*?);

/*?遍歷這個塊鏈串?*/

void?TravelerString(?PSTRING?);

/*?返回串的長度?*/

int?StrLength(?PSTRING?);

/*?拷貝一個串?*/

bool?StrCopy(?PSTRING,?PSTRING?);

/*?拼接兩個串常量編程一個塊鏈?*/

bool?Concat(?PSTRING,?char?*,?char?*?);

/*?初始化這個串?*/

void?InitString(?PSTRING?str?)

{

str?->?pHead??=?NULL;

str?->?pTail??=?NULL;

str?->?length?=?0;

}

/*

復(fù)制一個串常量

*/

bool?StrAssign(?PSTRING?str,?char?*?arr?)

{

int?i,?j;

PLIST?p,?q;

//串常量的長度

for(?i?=?0;?arr[i]?!=?'\0';?++i);

str?->?length?=?i;

for(?j?=?0;?j?

{

//如果j?等于?0,說明是首節(jié)點(diǎn)

if(?0?==?j?)

{

p?=?(?PLIST?)malloc(?sizeof(?List?)?);

if(?NULL?==?p?)

{

printf("動態(tài)內(nèi)存分配失敗\n");

return?false;

}

p?->?data?=?arr[j];

p?->?pNext?=?NULL;

str?->?pHead?=?p;

}

else

{

q?=?(?PLIST?)malloc(?sizeof(?List?)?);

if(?NULL?==?q?)

{

printf("動態(tài)內(nèi)存分配失敗\n");

return?false;

}

q?->?data?=?arr[j];

q?->?pNext?=?NULL;

p?->?pNext?=?q;

p?=?q;

}

}

str?->?pTail?=?p;

return?true;

}

/*?打印出這個串?*/

void?TravelerString(?PSTRING?str?)

{

PLIST?p?=?str?->?pHead;

while(?NULL?!=?p?)

{

printf(?"%c?",?p?->?data?);

p?=?p?->?pNext;

}

printf("\n");

}

/*?返回串的長度?*/

int?StrLength(?PSTRING?str?)

{

return?str?->?length;

}

/*?拷貝一個串的長度?*/

bool?StrCopy(?PSTRING?str,?PSTRING?str1?)

{

PLIST?p,?q,?r;

r?=?str1?->?pHead;

str?->?length?=?str1?->?length;

while(?NULL?!=?r?)

{

if(?r?==?str1?->?pHead?)

{

p?=?str?->?pHead?=?(?PLIST?)malloc(?sizeof(?List?)?);

p?->?data?=?r?->?data;

p?->?pNext?=?NULL;

r?=?r?->?pNext;

}

else

{

q?=??(?PLIST?)malloc(?sizeof(?List?)?);

q?->?data?=?r?->?data;

q?->?pNext?=?NULL;

p?->?pNext?=?q;

p?=?q;

r?=?r?->?pNext;

}

}

str?->?pTail?=?p;

return?true;

}

/*?拼接兩個字符串常量?*/

bool?Concat(?PSTRING?str,?char?*?s1,?char?*?s2?)

{

STRING?a1,?a2;

InitString(?&a1?);

InitString(?&a2?);

StrAssign(?&a1,?s1?);

StrAssign(?&a2,?s2?);

str?->?pHead?=?a1.pHead;

str?->?pTail?=?a2.pTail;

a1.pTail?->?pNext?=?a2.pHead;

return?true;

}

int?main(?void?)

{

//創(chuàng)建一個串

STRING?str,?str1,?str2;

InitString(?&str?);//初始化這個串

InitString(?&str1?);

InitString(?&str2?);

printf("將字符串常量“abcde”賦值給str\n");

StrAssign(?&str,?"abcde"?);

printf("打印出str的值:");

TravelerString(?&str?);

printf(?"打印出串str的長度:%d\n",?StrLength(?&str?)?);

//拷貝str?到?str1

printf("復(fù)制串str到str1,遍歷str1:\n");

StrCopy(?&str1,?&str?);

TravelerString(?&str1?);

//將兩個串常量,拼接成一個串塊鏈

Concat(?&str2,?"hello",?"world"?);

printf("將“hello”“world”拼接成一個新的塊鏈串:\n");

TravelerString(?&str2?);

return?0;

}

/*

在VC++6.0中輸出的結(jié)果是:

=============================

將字符串常量“abcde”賦值給str

打印出str的值:a?b?c?d?e

打印出串str的長度:5

復(fù)制串str到str1,遍歷str1:

a?b?c?d?e

將“hello”“world”拼接成一個新的塊鏈串:

h?e?l?l?o?w?o?r?l?d

=============================

總結(jié):

無非都是線性表,跟操作線性表的感覺一樣一樣的。

有時間多把線性結(jié)構(gòu)、棧、隊列那里再練練,考試的重點(diǎn)。

*/

扛不住了,我要吐了,不謝了,就這吧,估計考試也不會考這里的大題……

總結(jié)

以上是生活随笔為你收集整理的串的块链存储c语言栈,小蚂蚁学习数据结构(18)——串的块链的代码实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美乱论视频 | 日本不卡不卡 | 伊人网视频 | 亚洲精品字幕在线观看 | 免费中文av | 男人与雌性宠物交啪啪 | 精品一区二区免费视频 | 免费看a | 麻豆网站免费看 | 亚洲一久久| 日韩毛毛片 | 特级毛片爽www免费版 | 中文字幕www | 精品视频在线免费看 | 亚洲AV午夜福利精品一级无码 | 欧美亚洲综合在线 | 亚洲欧洲日韩国产 | 久久99久久99精品免观看软件 | 婷婷激情网站 | 你懂的亚洲 | 神马午夜在线观看 | 色玖玖 | 国产精品久久久久毛片软件 | 手机看片福利一区 | 成人免费视频网站在线看 | 精品国产免费人成在线观看 | 日韩一区三区 | 午夜aaa片一区二区专区 | 国产午夜精品一区二区理论影院 | 精品午夜视频 | 久久精品—区二区三区舞蹈 | 国产最新精品视频 | 精品无码久久久久成人漫画 | 亚洲情人网 | 一级片视频在线观看 | 欧美日韩在线第一页 | 天天干狠狠干 | 无码人妻一区二区三区线 | 娇妻高潮浓精白浆xxⅹ | 久久伊人亚洲 | 91禁外国网站 | 天天干夜夜爽 | 久久亚洲av成人无码国产电影 | 韩日三级视频 | 亚洲精品视频在线观看免费视频 | 色悠悠视频 | 国产无遮挡又黄又爽在线观看 | 俄罗斯乱妇 | 青青国产精品 | 欧美第十页 | 欧美激情小视频 | 免费av动漫 | 国产91在线精品 | 亚洲男人天堂视频 | 亚洲看片 | 天天操天天插 | 欧美偷拍视频 | 亚洲乱码一区二区三区 | 亚洲国产日韩a在线播放性色 | 日日夜夜狠狠爱 | 丁香花高清在线观看完整动漫 | av白浆 | 亚洲精品第一 | 少妇系列av | 亚洲一久久 | 免费在线观看网址 | 国产18精品乱码免费看 | 国产色秀视频 | 日本三级在线 | 草草草在线视频 | 一级日韩一级欧美 | 精产国品一区二区 | 日本精品久久久久中文字幕 | 日本一区二区不卡在线观看 | 中出精品 | 永久免费看黄 | 91中文字幕永久在线 | 国产精品国产精品国产专区 | 麻豆 美女 丝袜 人妻 中文 | 超碰成人福利 | 国产精品美女视频 | 91日韩精品| 日韩欧美一区二区三区在线 | 婷婷在线观看视频 | 久草超碰 | 亚色综合 | 亚洲第九十九页 | 91免费观看视频 | 日韩高清不卡一区 | 国产欧美第一页 | www.尤物| 国产对白视频 | 黄色小电影网址 | 色综合狠狠爱 | 日本丰满少妇做爰爽爽 | 亚洲涩视频 | 不卡av免费 | 久久国产片 | www.黄色网址|