学习数据接构和算法的第10天

题目讲解

尾插

c 复制代码
#include <stdio.h>
#include <stdlib.h>
// 定义顺序表结构
#define MAX_SIZE 100
struct ArrayList {
    int array[MAX_SIZE];
    int size; // 当前元素个数
};
// 初始化顺序表
void init(struct ArrayList *list) {
    list->size = 0; // 初始时元素个数为0
}
// 尾插操作
void append(struct ArrayList *list, int data) {
    if (list->size < MAX_SIZE) { // 检查顺序表是否已满
        list->array[list->size] = data; // 在数组末尾插入新元素
        list->size++; // 更新元素个数
    } else {
        printf("Error: 顺序表已满,无法插入新元素。\n 
    }
}
// 打印顺序表元素
void printList(struct ArrayList *list) {
    printf("顺序表元素:");
    for (int i = 0; i < list->size; i++) {
        printf("%d ", list->array[i]); // 逐个打印顺序表元素
    }
    printf("\n");
}
int main() {
    struct ArrayList list;
    init(&list); // 初始化顺序表
    // 进行尾插操作
    append(&list, 1);
    append(&list, 2);
    append(&list, 3);
    // 打印顺序表元素
    printList(&list);
    return 0;
}
相关推荐
夜思红尘1 小时前
算法--双指针
python·算法·剪枝
散峰而望1 小时前
【算法竞赛】C++函数详解:从定义、调用到高级用法
c语言·开发语言·数据结构·c++·算法·github
CoderCodingNo1 小时前
【GESP】C++五级真题(贪心思想考点) luogu-B4071 [GESP202412 五级] 武器强化
开发语言·c++·算法
我有一些感想……1 小时前
An abstract way to solve Luogu P1001
c++·算法·ai·洛谷·mlp
前端小L1 小时前
双指针专题(三):去重的艺术——「三数之和」
javascript·算法·双指针与滑动窗口
蒜丶1 小时前
Windows 11 22H2 跳过联网激活
windows
小小星球之旅2 小时前
CompletableFuture学习
java·开发语言·学习
盐焗西兰花2 小时前
鸿蒙学习实战之路-ArkTS循环渲染_ForEach使用指南
学习·华为·harmonyos
巧克力味的桃子2 小时前
单链表 - 有序插入并输出学习笔记
笔记·学习
智者知已应修善业3 小时前
【求等差数列个数/无序获取最大最小次大次小】2024-3-8
c语言·c++·经验分享·笔记·算法