Nov 06 2025
Yue+ -
棧的兩種存儲結構(順序存儲和鏈式存儲)
棧的操作實現
棧的概念
棧是一種後進先出(LIFO)的線性數據結構,只允許在一端(棧頂)進行插入和刪除操作。新元素總是添加到棧頂,而刪除也總是從棧頂移除最上面的元素。棧常用於函數調用、表達式求值、括號匹配等場景。
代碼實現---順序存儲(Array-based Stack)
#include stdio.h // 標準輸入輸出庫,用於 printf 等函數
#include stdbool.h//
C語言
Nov 06 2025
Yue+ -
C語言實現循環隊列——始化、入隊、出隊與完整測試
隊列的基本操作實現
1.隊列的概念
🌟 隊列(Queue)—— 先進先出的數據結構
隊列是一種線性數據結構,遵循 “先進先出”(FIFO, First In First Out) 的原則。如現實中的排隊:先來的人先被服務,後來的人排在隊尾等待。
🔧 基本操作:
入隊(Enqueue):在隊尾添加一個新元素。
出隊(Dequeue):從隊頭移除一個元素。
查看隊頭(Front):獲取隊頭
C語言
Nov 06 2025
Yue+ -
實現二叉排序樹的前中後序遍歷
二叉排序樹定義
二叉排序樹(Binary Sort Tree),也稱為二叉查找樹(Binary Search Tree, BST)或有序二叉樹,是一種特殊的二叉樹數據結構。以下是二叉排序樹的一些核心概念:
一個二叉排序樹或者是一棵空樹,或者是具有以下性質的二叉樹:
右子樹上所有結點的值均大於它的根結點的值
左子樹上所有結點的值均小於它的根結點的值
左右子樹也分別為二叉排序樹
不存在鍵值相
C語言
Nov 06 2025
Yue+ -
學習筆記:五種基礎排序C語言實現
五種基礎排序-升序實現
插入排序
構建有序序列,對於未排序數據,在已排序序列中從後向前掃描,找到相應位置並插入。
void InsertSort(int buf[], int bufsize)
{
for (int i = 1; i bufsize; i++){
int temp = buf[i];
int j = i - 1;
// 只
C語言