51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#编写算法
Java实现常见基础排序算法
1.直接插入排序在插入第i个记录的时,R1,R2...已经排好序,这时将关键字R依次与R1...比较,从而找到应该插入的位置,插入位置以及其后的记录依次往后移动。时间复杂度O(n^2) 空间复杂度O(1) 2.冒泡排序首先将第一个记录的关键字和第二个记录的关键字进...
代码星球
·
2020-04-04
Java
实现
常见
基础
排序
使用寻路算法写的一个小项目
用寻路算法写的一个小项目地址 https://a1115040996.github.io/arithmetic/html/寻路应用.html 没来得及仔细优化,后面再优化 代码如下<!DOCTYPEhtml><html><head><metacha...
代码星球
·
2020-04-04
使用
寻路
算法
写的
一个
自动化测试用例的编写规则
转载自:http://www.cnblogs.com/jshtest/p/6362677.html手工测试用例是针对手工测试人员,自动化测试用例是针对自动化测试框架,前者是手工测试用例人员应用手工方式进行用例解析,后者是应用脚本技术进行用例解析,两者最大的各自特点在于,前者具有较好的异常处理能力,而且能够基于测试用例,...
代码星球
·
2020-04-04
自动化
试用
编写
规则
谷歌大脑提出AutoML-Zero,只会数学运算就能找到AI算法,代码已开源
https://www.qbitai.com/2020/03/12245.htmlAlphaGo战胜了人类最强棋手,但前提是它先学会了人类棋谱,离不开人类指导。接着谷歌又推出了AlphaGoZero,只让AI知道围棋规则,从零开始学下棋,结果再次登上棋艺顶峰。AI既然能从零学习围棋,是否可以从零开始摸索机器学习算法?当...
代码星球
·
2020-04-04
谷歌
大脑
提出
AutoML-Zero
只会
某种 找换硬币问题的贪心算法的正确性证明
一,问题介绍最近一直在看贪心算法的正确性证明(如何证明贪心算法获得的解一定是最优解),感觉“剪枝”技巧用得比较多。再看了下《算法导论》中贪心算法一章里面的一个练习---找换硬币问题。这个问题对于某些面值的硬币是有最优解的,故记录下其中的一些证明思路。考虑用最少的硬币数来找n分钱的问题,假设每个硬...
代码星球
·
2020-04-04
某种
找换
硬币
题的
贪心
部分背包问题的贪心算法正确性证明
一,部分背包问题介绍首先介绍下0-1背包问题。假设一共有N件物品,第i件物品的价值为Vi,重量为Wi,一个小偷有一个最多只能装下重量为W的背包,他希望带走的物品越有价值越好,请问:他应该选择哪些物品?0-1背包问题的特点是:对于某件(更适合的说法是:某类)物品,要么被带走(选择了它),要么不被带走(没有选择它),不存在...
代码星球
·
2020-04-04
部分
背包
题的
贪心
算法
分治算法思想介绍
一,介绍分治算法主要包含两个步骤:分、治。分,就是递归地将原问题分解成小问题;治则是:在解决了各个小问题之后(各个击破之后)合并小问题的解,从而得到整个问题的解 二,分治递归表达式分治算法一般都可以写出一个递归表达式;比如经典的归并排序的递归表达式:T(N)=2T(N/2)+O(N)T(N)代表整个原问题,采...
代码星球
·
2020-04-04
分治
算法
思想
介绍
排序算法总结之希尔排序
一,希尔排序算法介绍①希尔排序又称缩小增量排序,它本质上是一个插入排序算法。为什么呢?因为,对于插入排序而言,插入排序是将当前待排序的元素与前面所有的元素比较,而希尔排序是将当前元素与前面增量位置上的元素进行比较,然后,再将该元素插入到合适位置。当一趟希尔排序完成后,处于增量位置上的元素是有序的。②希尔排序算法的效率依...
代码星球
·
2020-04-04
排序
算法
总结
希尔
排序算法总结之快速排序
一,快速排序介绍快速排序与归并排序一样,也是基于分治的递归算法,体现在:在每一趟快速排序中,需要选出枢轴元素,然后将比枢轴元素大的数组元素放在枢轴元素的右边,比枢轴元素小的数组元素都放在枢轴元素的左边。然后,再对分别对枢轴元素左边和枢轴元素右边的元素进行快速排序。 二,快速排序算法分析 ①相比于直接...
代码星球
·
2020-04-04
排序
算法
总结
快速
排序算法总结之归并排序
一,归并排序介绍归并排序是一个典型的基于分治的递归算法。它不断地将原数组分成大小相等的两个子数组(可能相差1),最终当划分的子数组大小为1时(下面代码第17行left小于right不成立时),将划分的有序子数组合并成一个更大的有序数组。为什么是有序子数组???归并排序的递归公式:T(N)=2T(N/2)+O(N)从公式...
代码星球
·
2020-04-04
排序
算法
总结
归并
排序算法总结之堆排序
一,堆排序介绍堆是一个优先级队列,对于大顶堆而言,堆顶元素的权值最大。将待排序的数组建堆,然后不断地删除堆顶元素,就实现了排序。关于堆,参考:数据结构--堆的实现之深入分析下面的堆排序算法将数组中的元素从小到大排序,用大顶堆来实现。 二,堆排序算法分析 现给定了一维数组,需要将数组中的元素使用堆排序...
代码星球
·
2020-04-04
排序
算法
总结
之堆
排序算法总结之插入排序
一,插入排序介绍 插入排序是基于比较的排序。所谓的基于比较,就是通过比较数组中的元素,看谁大谁小,根据结果来调整元素的位置。因此,对于这类排序,就有两种基本的操作:①比较操作;②交换操作其中,对于交换操作,可以优化成移动操作,即不直接进行两个元素的交换,还是用一个枢轴元素(tmp)将当前元素先保存起来,然后执...
代码星球
·
2020-04-04
排序
算法
总结
插入
各种排序算法的总结
都是基于内存的排序算法,包括插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、堆排序、归并排序14年在网易Blog上写的,现把它放到这里。 一,直接插入排序 总体思路:位于表中后面的元素依次与表中前面的元素比较,若比之小,则还需继续和更前面的元素比...
代码星球
·
2020-04-04
各种
排序
算法
总结
并查集与贪心算法的应用之求解无向图的最小生成树
一,介绍本文介绍使用Kruskal算法求解无向图的最小生成树。Kruskal是一个贪心算法,并且使用了并查集这种数据结构。关于并查集的介绍,参考:数据结构--并查集的原理及实现 二,构造一个无向图图,肯定有顶点和边。由于求解最小生成树,故边还需要有权值。此外,对于每一条边,需要找到与它相关联的两个顶点,因为在...
代码星球
·
2020-04-04
查集
贪心
算法
用之
求解
最短路径算法-Dijkstra算法的应用之单词转换(词梯问题)
一,问题描述在英文单词表中,有一些单词非常相似,它们可以通过只变换一个字符而得到另一个单词。比如:hive-->five;wine-->line;line-->nine;nine-->mine.....那么,就存在这样一个问题:给定一个单词作为起始单词(相当于图的源点),给定另一个单词作为终点,...
代码星球
·
2020-04-04
算法
最短
路径
-Dijkstra
用之
首页
上一页
...
128
129
130
131
132
...
下一页
尾页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他