数据结构与算法
文章平均质量分 86
中意灬
It's better to fight back than continue to be rotten @qq_978593353
展开
-
程序设计竞赛笔记——埃式筛法
他从 22 开始,依次判断各个自然数是不是质数,如果是质数就会把这个数字装入口袋。但是口袋的承重量有限,不能装得下总和超过 LL 的质数。将这些质数从小往大输出,然后输出最多能装下的质数个数,所有数字之间有一空行。埃式筛法的思路非常简单,就是用已经筛选出来的素数去过滤所有能够被它整除的数。这些素数就像是筛子一样去过滤自然数,最后被筛剩下的数自然就是不能被前面素数整除的数,根据素数的定义,这些剩下的数也是素数。将这些质数从小往大输出,然后输出最多能装下的质数个数,所有数字之间有一空行。埃式筛法,一种一种在。原创 2022-11-11 17:23:21 · 262 阅读 · 0 评论 -
数据结构与算法实验
本文是自己数据结构与算法的实验作业,只为了便于自己查看和学习,有问题的地方还望斧正,所用软件为devc++,以下代码拿去都能直接运行。目录1. VC 编程与测试初步2. 实现顺序表的各种基本运算3. 实现单链表的各种基本运算4. 线性表及其应用-----约瑟夫环5. 栈与队列的各种基本运算6. 栈与队列应用(I)-----算术表达式求值7. 栈与队列应用(II)----迷宫问题8. 实现串的各种基本运算1. VC 编程与测试初步 1.1 熟悉 VC++编.原创 2022-04-14 11:39:06 · 733 阅读 · 0 评论 -
算法入门——散列表
何为散列表散列表:顾名思义也就是离散的或者零散,即不连贯的列表,也可以类比于离散数组。散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。原创 2022-02-11 14:20:30 · 477 阅读 · 0 评论 -
算法入门——分而治之思想之快速排序与归并排序
分而治之分而治之(divide and conquer,D&C)——一种著名的递归式问题解决方法。所谓“分而治之” 就是把一个复杂的算法问题按一定的“分解”方法分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的解,把各部分的解组成整个问题的解,这种朴素的思想来源于人们生活与工作的经验,也完全适合于技术领域。诸如软件的体系结构设计、模块化设计都是分而治之的具体表现。使用D&C解决问题的过程包括两个步骤:(1)找出基线条件(终止递归的条件),这种条件尽可能简单。(2原创 2022-02-07 19:39:45 · 1288 阅读 · 0 评论 -
算法入门——递归与栈
目录递归栈栈的操作调用栈python中实现一个栈总结递归什么是递归?递归就是方法自己调用自己。比如下面这个例子def fun(n): print(n) fun(n-1)if __name__ == '__main__': fun(10)它就是个递归函数,但是你会发现它会一直运行下去109876.....但这样就会导致很多错误,我想没人会要一个无线循环的函数吧,所以我们需要有跳出循环的条件,正因为如此,每个递归函...原创 2022-02-05 02:33:23 · 3125 阅读 · 1 评论 -
算法入门——数组,链表,选择排序
内存的工作原理大家逛超市的时候,应该都看见门口有储存柜,进去逛超市时,就把东西存入储存柜,如果你东西很多,就可能需要开两个柜子来放你的东西,然后你就只需要拿着储存柜小票轻轻松松去逛超市了,等逛完超市,你凭借小票在把自己的东西拿出来。其实计算机内存的工作原理大致就是这样,。计算机就是超市门口这一堆储物柜的集合,每个单独的储物柜都有对应的小票,都有它们的地址。当我们需要将数据存储到内存时,我们请求到计算机,计算机再分配给我们一片空间用于存储。数组数组大家都有一定了解了,在python中的列表原创 2022-01-30 01:23:57 · 1364 阅读 · 0 评论 -
算法简介——二分查找,时间复杂度,空间复杂度
文章目录前言二分查找时间复杂度大O表示法空间复杂度小结前言算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。算法是一组完成任务的指令。任何代码片段都可视为算法。二分查找我相信大家可原创 2022-01-26 17:04:58 · 4942 阅读 · 0 评论