![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
西蒙海
这个作者很懒,什么都没留下…
展开
-
Lua表结构自定义扩展
-- 对于key值不连续table,使其按key值大小顺序遍历function table.pairsByKeys(t) local temp_tab = {} for n in pairs(temp_tab) do temp_tab[#temp_tab + 1] = n end local i = 0 return function () i = i + 1 return temp_tab[i], t[temp_tab[i]] endend...原创 2020-06-13 15:54:04 · 224 阅读 · 0 评论 -
算法学习之递归思想
一.算法思想递归(Recurrence):计算机、数学、运筹等领域经常使用的最 强大的解决问题的方法之一,它用一种简单的方式来解决那 些用其他方法解起来可能很复杂的问题,也就是说有些问题 用递归算法来求解,则变得简单,而且容易理解。递归的基本思想:把一个问题划分为一个或多个规模更小的 子问题,然后用同样的方法解规模更小的子问题。二.递归算法的基本设计步骤1.找到问题的初始条件(递...原创 2019-05-20 16:50:32 · 823 阅读 · 0 评论 -
算法学习之定义
算法:解决问题的一种方法或一个过程。是一个由若干运算或指令组成的有穷序列。求解问题的算法可以看作是输入示例和输出之间的函数。算法特点:输入输出,确定性,可行性,有穷行。算法常见的描述方式:伪代码,流程图,自然语言等。利用循环不变量证明算法的正确性:寻找到循环不变量,即某个特性L(j),然后证明循环不变量为真L(j=1.....n),然后利用类似数学归纳法的证明方法。1.初...原创 2019-05-19 10:23:23 · 117 阅读 · 0 评论 -
C#算法学习总结—冒泡排序
一。冒泡排序的基本思想:从无序序列头部开始,进行两两比较,根据大小交换位置,直到最后将最大(小)的数据元素交换到了无序队列的队尾,从而成为有序序列的一部分;下一次继续这个过程,直到所有数据元素都排好序算法的核心在于每次通过两两比较交换位置,选出剩余无序序列里最大(小)的数据元素放到队尾。二。冒泡排序的基本流程:1,比较相邻的元素。如果第一个比第二个大(小),就交换他们两个.2,对每一对相邻元...原创 2017-09-25 19:00:16 · 366 阅读 · 0 评论