学习数据结构和算法的地13天

题目讲解

尾插

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;
}
相关推荐
2501_9412362114 分钟前
C++与Node.js集成
开发语言·c++·算法
晨非辰16 分钟前
【数据结构初阶系列】归并排序全透视:从算法原理全分析到源码实战应用
运维·c语言·数据结构·c++·人工智能·python·深度学习
云边有个稻草人3 小时前
部分移动(Partial Move)的使用场景:Rust 所有权拆分的精细化实践
开发语言·算法·rust
好奇龙猫4 小时前
日语学习-日语知识点小记-构建基础-JLPT-N3阶段-二阶段(19):阶段练习
学习
泡沫冰@5 小时前
数据结构(20)
数据结构
松涛和鸣5 小时前
11.C 语言学习:递归、宏定义、预处理、汉诺塔、Fibonacci 等
linux·c语言·开发语言·学习·算法·排序算法
2501_941111246 小时前
C++与自动驾驶系统
开发语言·c++·算法
2501_941111696 小时前
C++中的枚举类高级用法
开发语言·c++·算法
jz_ddk7 小时前
[算法] 算法PK:LMS与RLS的对比研究
人工智能·神经网络·算法·信号处理·lms·rls·自适应滤波
Miraitowa_cheems7 小时前
LeetCode算法日记 - Day 106: 两个字符串的最小ASCII删除和
java·数据结构·算法·leetcode·深度优先