学习数据结构和算法的地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;
}
相关推荐
秋野酱10 分钟前
基于javaweb的SpringBoot驾校预约学习系统设计与实现(源码+文档+部署讲解)
spring boot·后端·学习
进击的小白菜26 分钟前
Java回溯算法解决非递减子序列问题(LeetCode 491)的深度解析
java·算法·leetcode
houliabc1 小时前
【2025年软考中级】第一章1.5 输入输出技术(外设)
笔记·学习·证书·软考·计算机系统
-一杯为品-1 小时前
【深度学习】#11 优化算法
人工智能·深度学习·算法
-qOVOp-2 小时前
zst-2001 上午题-历年真题 计算机网络(16个内容)
网络·计算机网络·算法
Swift社区2 小时前
涂色不踩雷:如何优雅解决 LeetCode 栅栏涂色问题
算法·leetcode·职场和发展
冠位观测者2 小时前
【Leetcode 每日一题】2900. 最长相邻不相等子序列 I
数据结构·算法·leetcode
请你喝好果汁6412 小时前
学习笔记:Conda 环境共享
笔记·学习·conda
努力写代码的熊大2 小时前
链表的中间结点数据结构oj题(力扣876)
数据结构·leetcode·链表
真的没有脑袋2 小时前
概率相关问题
算法·面试