ioDraw
中文
中文
English
Español
العربية
Français
Português
Pусский
日本語
Deutsch
한국어
Italiano
工具
博客
模板
产品
流程图
思维导图
甘特图
在线白板
代码绘图
文本绘图
在线图表
SVG编辑器
海报设计
图片编辑器
AI助手
Android
数据结构
十种常见排序算法
0、算法概述0.1 算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时...
2021-11-16 10:36
阅读数 41
插入排序——直接插入排序
【基本思想】:顺序的把待排序的数据元素按其关键字的大小插入到已排序数据元素的适当位置。自己和数据元素个数从只有一个数据元素开始,逐次增大,当子集合大小最终和集合大小相同时,排序结束。插入排序的理解关键在于理解下面三个问题: 1.往哪里进行插入 2.把哪个值进行插入 3.怎么实...
2021-11-14 23:40
阅读数 70
使用JS实现双向链表
1.双向链表双向链表和普通链表的区别在于,在链表中,一个节点只有链向下一个节点的链接,而在双向链表中,链接是双向的,一个链向下一个元素,另一个链向前一个元素2.双向链表的优缺点每次在插入或删除某个节点时,都需要处理四个引用,而不是两个,实现起来会困难些相对于单向链表,所占内存空间更大一些;但是...
2021-11-09 16:57
阅读数 73
使用ES5,ES6实现链表数据结构
1.链表介绍1.存储多个元素最常用的数据结构是数组,数组有一个缺点,(大多数语言中)数组的大小是固定的,从数组的起点或中间插入或移除项成本很高,需要移动元素(我们所学的JavaScript有来自Array类的方法可以帮我们做这些事,但背后的情况同样如此)2.链表存储有序的元素集合,不同于数组,...
2021-11-08 16:15
阅读数 39
MFC Windows 程序设计(一)-程序员的解放
很久很久以前,程序员是一个很辛苦的工作,因为那时候大多数的软件都是用C语言编写的,Microsoft Visual Basic还没有出现,更不要说Java,Android,C#,J#等等智能化语言,程序员们不仅要学习有关新操作系统的一切,还要熟悉Widows提供成千上万个不同的应用软件编程接口...
2021-11-03 23:51
阅读数 109
单链表实现简单选择排序
不是所有的排序算法都可以用单链表来实现,比如快速排序和堆排序,由于单链表不具有随机访问的特性,所以也受限制本题中的简单选择排序,在单链表中实现的思路:每次遍历链表中的剩余部分,每一趟将剩余部分中最大结点插到表头,最后即可得一条由小到大的单链表,思路很简单,具体还得落实到代码上,你会了,不代表你...
2021-10-21 20:08
阅读数 155
十大经典排序算法
稳定排序:冒泡排序、插入排序、归并排序非稳定排序:选择排序、希尔排序、堆排序、快速排序1、冒泡排序冒泡排序就是把小的元素往前调或者把大的元素往后调,比较是相邻的两个元素比较,交换也发生在这两个元素之间。(类似于气泡上浮过程)动图如下:步骤:1、比较相邻的元素,如果第一个比第二个大,则交换2、对...
2021-10-21 11:40
阅读数 9
一文搞掂十大经典排序算法
一文搞掂十大经典排序算法今天整理一下十大经典排序算法。1、冒泡排序——越小的元素会经由交换慢慢“浮”到数列的顶端算法演示算法步骤比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复...
2021-10-12 00:50
阅读数 20
二叉树、满二叉树和完全二叉树--Java数据结构和算法
10.1 二叉树10.1.1 为什么需要树这种数据结构数组存储方式的分析优点:通过下标方式访问元素,速度快。对于有序数组,还可使用二分查找提高检索速度。缺点:如果要检索具体某个值,或者插入值(按一定顺序)会整体移动,效率较低 [示意图]画出操作示意图:链式存储方式的分析优点:在一定程度上对数组...
2021-10-11 09:05
阅读数 60
手撕九大排序算法
直接插入排序、希尔排序、选择排序 && 堆排序、冒泡排序 && 快速排序、归并排序、基数排序、计数排序 (非比较排序)
2021-08-20 18:07
阅读数 86
«
12
13
14
15
16
17
18
19
20
»
技术
Java
1212 篇
Python
927 篇
开发语言
608 篇
c语言
463 篇
算法
461 篇
MySQL
438 篇
数据库
394 篇
前端
387 篇
更多...
今日推荐
ioDraw Mac客户端安装教程
阅读数 33
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:
[email protected]
关注微信
©2020-2024 ioDraw All rights reserved,
Privacy Policy