
数据结构与算法
文章平均质量分 56
数据结构与算法学习总结
Leo同学啊
在读双一流高校博士
展开
-
基于Java的数据结构与算法的学习记录
四非水硕的学习记录|数据结构与算法的复习记录原创 2022-08-31 19:06:09 · 210 阅读 · 0 评论 -
线性表之单链表
1. 单链表概念&设计 单链表是一种链式存取的数据结构,,链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) + 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。以“结点的序列”表示的线性表称作线性链表(单链表),单链表是链式存取的结构。 对于链表的每一个结点,我们使用结构体(struct)进行设计,其主要内容有: 其中,DATA数据元素,可以为你想要储存的任何数据格式,可以是数组,可以是int,甚至可以是结构体(这就..原创 2021-01-23 19:37:59 · 481 阅读 · 0 评论 -
经典排序算法介绍及源码(c++实现)
算法分类 十种常见排序算法可以分为两大类: 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。 算法复杂度 相关概念 稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。 不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b 的后面。 时间复杂度:对排序数据的总原创 2020-10-12 20:49:33 · 507 阅读 · 1 评论 -
循环习题练习
问题描述 北大附中书院有m个同学,他们每次都很民主地决策很多事情。按罗伯特议事规则,需要一个主持人。同学们民主意识强,积极性高,都想做主持人,当然主持人只有一人。为了选出主持人,他们想到了一个办法并认为很民主。方法是: 大家围成一圈,从1到m为每个同学编号。然后从1开始报数, 数到n的出局。剩下的同学从下位开始再从1开始报数。最后剩下来的就是主持人了。现在已经把同学从1到m编号,并约定报数为n的出局,请编程计算一下,哪个编号的同学将会成为主持人。 输入格式 一行,由空格分开的两个整数m .原创 2020-10-01 13:37:39 · 191 阅读 · 0 评论 -
排序算法练习题
现给出一个序列a,其中元素的个数为n,要求将它们按从小到大的顺序排序。 冒泡排序 #include <iostream> using namespace std; int main() { int a[10] = {3,4,1,5,2}; for(int i = 1;i <= 4; i++){ for(int j = 0; j < 5 - i; j++){ if(a[j] > a[j + 1]){ int temp = a[j]; a[.原创 2020-10-01 10:29:46 · 1980 阅读 · 0 评论 -
日期问题整理
判断闰年 判断闰年闰年的判别法: 参考解法一: 如果a%4!=0,则a不是闰年; 否则a%100==0&&a%400!=0,则a不是闰年; 则a是闰年。 参考解法二:列出所有闰年的可能条件;如果 year%4==0&&year%100!=0||year%400==0 则a是闰年,否则不是。 参考程序一: #include<stdio.h> int...原创 2019-05-17 17:44:28 · 692 阅读 · 0 评论