算法
xiewz1112
这个作者很懒,什么都没留下…
展开
-
递归边界条件和变量探析
递归算法心得1、目的递归就是将问题逐渐简单明了,即从问题出发,向初始条件或边界条件递进,直至找到边界条件。2、过程(伪代码)函数名(参数):遇到边界条件,返回(值或无)至前一函数栈调用点;本次函数栈中对数据处理;调用函数(处理后的参数);本次函数栈中对数据进一步处理;2、注意点函数栈中可能处理的数据包括:全局变量和局部变量。在函数返回时,在上一个函数栈中,全局变量和局部变量状态不一样。函数外的全局变量:状态已经发生改变,不会改回到前一个函数栈中状态。函数内的局部变量:状态改回到前一原创 2020-07-14 14:05:05 · 1229 阅读 · 0 评论 -
梳排序算法
梳排序算法算法def comb_sort(a[]) : j <- n, s <- 1.3, flag <- false while j > 1 or false = true : i <- 0, j <- max{|j/s|, 1}, flag <- false while i + j <...原创 2018-03-16 12:33:42 · 178 阅读 · 0 评论 -
冒泡算法
冒泡算法算法def bubbling_sort(a[]) do for i = 1 to n-1 : for j = 1 to n-i : if a[j] > a[j+1]; exchange a[j] and a[j+1] end if end fo...原创 2018-03-16 12:58:55 · 116 阅读 · 0 评论 -
归并算法(递归版)
归并算法(递归版)算法如果n小于或等于1,不必排序,程序结束。递归对前一半元素排序。递归对后一半元素排序。合并两个有序列,得到最终的排序结果。合并方法def merge(int[] a, int b) : m = a.length, n = b.length; c = int[m+n]; i = 1, j = 1; whi...原创 2018-03-17 23:30:42 · 735 阅读 · 0 评论 -
归并算法(非递归版)
归并算法(非递归版)用二叉堆排序的概念,自底向上,分层排序。缺点是不直观,理解有困难,算法较复杂。算法def merge_sort_norecurse(array) : j = 1; while j < array.length : i = 1; // 最右侧节点的左子序列,其最后一个元素的下标应小于数组长度 ...原创 2018-03-19 13:21:54 · 559 阅读 · 0 评论 -
快速排序(递归版)
快速排序(递归版)随名为快速,实际情况下时间复杂度较高。需要寻找合适的阈值,一般课选择首元素、中间元素或尾元素作为阈值,也可以随机选择一个元素作为阈值,以免退化到极端情况。算法选择array中的一个阈值,一般为中位值,可随机选择,比中位值小的对象放在序列X中,比中位值大的对象放在Y中若子序列X包含超过一个对象,递归对子序列X排序若子序列Y包含超过一个对象,递归对子序列Y排序合并...原创 2018-03-19 20:58:43 · 211 阅读 · 0 评论 -
利用Spring Cloud Config 通过JCE进行对称加密,有趣
如题,对同一字符串进行多次分别加密后,得到新的字符串都不相同,再逐一反向解密都能得到原字符串。对称加密算法的实现原理是什么,有空需要学习一下。...原创 2018-10-16 12:39:33 · 286 阅读 · 0 评论