合集-数据结构与算法

摘要:1、和顺序栈相比,链栈有一个比较明显的优势是: A、通常不会出现栈满的情况 B、通常不会出现栈空的情况 C、插入操作更容易实现 D、删除操作更容易实现 答案:A;顺序栈是事先确定好大小的,链栈是动态的,它们的区别类似于数组和链表。因为顺序栈用数组实现,必须事先确定栈的大小,对内存的使用效率并不高,无 阅读全文
posted @ 2023-07-25 00:20 冲他丫的 阅读(295) 评论(0) 推荐(0)
摘要:时间复杂度:由于计算机的性能不同,无法准确地确定一个算法的执行时间,因此使用执行算法的次数来代表算法的时间复杂度,一般用O(公式)来表示。 空间复杂度:执行一个程序(算法)所需要的内存空间的大小,是对一个算法在运行过程中临时占用存储空间大小的衡量。通常来说,只要这个算法不涉及动态分配内存以及递归,通 阅读全文
posted @ 2023-08-04 19:47 冲他丫的 阅读(57) 评论(0) 推荐(0)
摘要:栈:只有一个出入口的表结构,先进后出,FILO表 栈顶操作 一、顺序栈 数据项: 存储元素的内存首地址 栈的容量 栈顶位置 运算: 创建、销毁、入栈、出栈、栈顶、栈空、栈满、数量 栈相关的概念:假设栈容量为cal 空增栈: top: 0开始 先入栈,再top++,存储地址由低到高 满增栈: top: 阅读全文
posted @ 2023-09-07 21:09 冲他丫的 阅读(51) 评论(0) 推荐(0)
摘要:表: 顺序(数组) 、 链式(链表) # 一、顺序表 - 数据项: 存储元素的内存首地址 表的容量 元素的数量 - 运算: 创建、销毁、清空、插入、删除、访问、查询、修改、排序、遍历 - 注意: 1、要确保数据元素的连续性 2、不能越界 - array 顺序表 ```c #include #incl 阅读全文
posted @ 2023-09-08 08:56 冲他丫的 阅读(24) 评论(0) 推荐(0)
摘要:list_queue.h #ifndef LIST_QUEUE_H #define LIST_QUEUE_H #include <stdio.h> #include <stdlib.h> #include <stdbool.h> #define TYPE int // 节点结构 typedef st 阅读全文
posted @ 2023-09-09 09:21 冲他丫的 阅读(14) 评论(0) 推荐(0)
摘要:通用链表 能够存储任意类型的数据到链表中,并提供对应的操作 万能指针 void* C语言中任意类型的指针可以转换成void*类型 void*类型指针可以转换成任意类型指针 节点: void* ptr; // 数据域 指针域; 链表结构: 头指针 数量 核心点: 1、void* 确保能存储任意类型数据 阅读全文
posted @ 2023-09-09 16:46 冲他丫的 阅读(24) 评论(0) 推荐(0)