91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

棧的代碼實現之數組方案

發布時間:2020-08-02 17:21:18 來源:網絡 閱讀:647 作者:ningcaichen66 欄目:編程語言

棧是一種具有從宏觀上來看是“先進后出”功能特點的數據結構。可以由數組或者鏈表來實現。

其實現原理是從“一端”操作,導致先存儲的數據最后被取出。有棧頂、棧底等因素組成。在《C語言,好爽》第7版(2017年)第76集:棧的代碼實現之數組方案,中對棧的內存實現原理進行了詳解。這里只從宏觀上來理解,以及相關代碼如何實現。

其結構體類型為:

#define N 30

struct _stack

{

int top;

int data[N];

};

typedef struct _stack mystack;

對棧的操作通常有初始化、判斷棧空、棧滿,入棧,操作,清空等操作。這里分別實現:

棧的代碼實現之數組方案

棧的代碼實現之數組方案

棧的代碼實現之數組方案

棧的代碼實現之數組方案

棧的代碼實現之數組方案

棧的代碼實現之數組方案

棧的代碼實現之數組方案

棧的代碼實現之數組方案

調用代碼:

int main() {

mystack ms;

init(&ms);

int flag = 0;

int value = 0;

value = 0;

flag = push(&ms, value);

if (flag)

{

printf("%d 入棧成功", value);

}

else

{

printf("%d 入棧失敗", value);

}

value = 1;

flag = push(&ms, value);

if (flag)

{

printf("%d 入棧成功", value);

}

else

{

printf("%d 入棧失敗", value);

}

value = 2;

flag = push(&ms, value);

if (flag)

{

printf("%d 入棧成功", value);

}

else

{

printf("%d 入棧失敗", value);

}

show(&ms);

//彈出棧

int output_value = 0;

int output_flag = 0;

output_flag = pop(&ms, &output_value);

if (output_flag)

{

printf("出棧成功,出棧的數據為:%d", output_value);

}

else

{

printf("出棧失敗");

}

output_flag = pop(&ms, &output_value);

if (output_flag)

{

printf("出棧成功,出棧的數據為:%d", output_value);

}

else

{

printf("出棧失敗");

}

output_flag = pop(&ms, &output_value);

if (output_flag)

{

printf("出棧成功,出棧的數據為:%d", output_value);

}

else

{

printf("出棧失敗");

}

show(&ms);

system("pause");

return 0;

}

測試結果:

棧的代碼實現之數組方案


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临武县| 中阳县| 琼结县| 同仁县| 舞阳县| 巴彦县| 塔河县| 廉江市| 如东县| 深水埗区| 延边| 常熟市| 岑巩县| 巢湖市| 抚松县| 荥经县| 长治市| 高要市| 凤冈县| 大同县| 新宁县| 宽城| 清水河县| 巴南区| 镇雄县| 南华县| 昌宁县| 潞西市| 仙桃市| 武冈市| 嘉鱼县| 确山县| 盐城市| 和硕县| 遵义市| 东海县| 耿马| 饶平县| 镇宁| 福州市| 江川县|