
算法总结
四瓣纸鹤
一个想成为大佬的菜鸟
展开
-
回文数
题目:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。你能不将整数转为字符串来解决这个问题吗?解析:判断回文最容易想到的方法就是把数字转化成字符串,判断前后半部分的是否相等。但是这样需要额外的存储空间,并且与题目最后的要求不一致。还有一种办法就是从数字本身想办法,通过数字的翻转后判断数字与原数字是否相等。这里有几个临界值可以先处理掉:1. 负数带...原创 2019-11-27 22:30:57 · 967 阅读 · 0 评论 -
排序算法之选择排序
选择排序,顾名思义是通过一种选择的方式对一组无序数列进行排序。那么,选择什么呢?选择出来什么之后又该如何排序?我们来重点讨论一下: 首先,我们来谈谈选择排序的原理,很简单的:从一组无序数列中选择一个最小值(最大值也可以,相应调整即可),把这个数放置在数列的首位,可以直接和第一位交换,此时原数列分为有序区和无序区两块,对无序区做相同的动作,无序区继续分为有序区和无序区两块......,就这原创 2015-04-18 19:43:39 · 557 阅读 · 0 评论 -
排序算法之插入排序-数组版
先说原理:从一个无序数组中找到第一个无序数将他插入到合适的位置。然后重复这个动作。直到数组排好序。涉及到的操作:1.找到第一个无序元素。2.将他插入到正确位置。好,下面来具体分析一下实现方法:1.对于第一个操作,我们需要一个索引来指示第一个无序元素的位置,我们可以从数组的第二个元素开始遍历,当发现这个元素值小于前一位上的元素之,就把这个索引值记录下来,用来表示这个元素要插入的位原创 2015-04-22 19:36:10 · 572 阅读 · 0 评论 -
数据结构与算法 第二天 算法绪论
注:所有笔记参考《大话数据结构》1 算法定义算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。2 算法的特性2.1 输入输出算法具有零个输入或多个输入。算法至少有一个或多个输出。2.2 有穷性算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。2.3 确定性算法的每一步骤都具有...原创 2019-02-27 14:57:24 · 149 阅读 · 0 评论 -
数据结构与算法 第三天 线性表(一)
所有笔记参考《大话数据结构》1 定义 线性表(List):零个或多个数据元素的有限序列。 强调:首先它是一个序列。也就是说,元素之间是有顺序的,若元素存在多个,则第一个元素无前驱,最后一个元素无后继,其他每个元素都有且只有一个前驱和后继。 数学定义: 若线性表记为(a1,...,ai-1,ai,ai+1,...,an),则表中ai-1领先余ai,ai领先于ai+...原创 2019-03-02 21:36:00 · 270 阅读 · 0 评论 -
数据结构和算法 第一天 开始
开始2019/02/26 从今天开始,系统学习数据结构和算法,记录所思所得。所有笔记,参考《大话数据结构》。1. 学习的最高目的一个对编程无比爱好的人,学习数据结构的母的,既不是为了工作为了钱,也不是为了学位和考试,而只是为了更好地去感受编程之美。 2. 基本概念和术语数据:描述客观事物的符号,是计算机可以操作的对象,能被计算机识别,并输入给计算机处理的符号集合。包含整型、...原创 2019-02-26 23:29:48 · 164 阅读 · 0 评论 -
数据结构与算法 第四天 线性表——链表结构(二)
声明:所有理论笔记来源于《大话数据结构》线性表的链式存储结构1 线性表的顺序存储结构 定义:用一组任意的存储单元存储线性表的数据元素,这组存储单元可以时连续的,也可以是不连续的。 为了表示每个数据元素ai与其本身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置)。我们把存储数据元素信息的域称为数据域,把存储直接后继位置的域称为指针域。指针域中存储的信息称作...原创 2019-03-16 09:51:26 · 180 阅读 · 0 评论