E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
算法基础--排序算法
acwing
算法基础
__提高__进阶_课
文章目录1、排序1.1、快速排序——分治1.2、归并排序——分治2、二分2.2、整数二分2.3、小数二分(浮点数二分)3、高精度4、前缀和与差分5、双指针算法6、位运算7、离散化8、区间合并总结要求:把算法的思想搞懂。课后把代码模板背过,能够达到快速默写出来、调试通过就好了。每一个模板重复写几遍。1、排序1.1、快速排序——分治思路:确定分界点:q[i]、q[(i+r)/2]、q[r]调整区间:分
m0_72945438
·
2023-11-11 09:39
算法
数据结构
java
【C语言】qsort函数模拟实现
假设有一个整形数组intarr[4]={8,9,7,6};我们想将他们升序排序就可以使用冒泡
排序算法
:1.第一趟排序第一个元素与第二个元素比较,如果第一个元素大于第二个元
X__cheng
·
2023-11-11 05:48
C语言
c语言
LeetCode刷题总结(一)
简单的算法比如选择、冒泡、插入排序,他们的时间复杂度都是O(n2)O(n^2)O(n2),所以就算是后面高级的
排序算法
需要用子
排序算法
时,我们也不会使用这种高时间复杂度的
排序算法
。对于这种算法
赛文忆莱文
·
2023-11-11 05:26
leetcode
排序算法
算法
十大经典
排序算法
【算法思想+图解+代码】【数据结构与算法笔记】
排序(Sort)分析
排序算法
的执行效率、内存消耗、稳定性(应对各种极端情况的时间空间复杂度波动)有序度是数组中具有有序关系的元素对的个数完全有序的数组的有序度叫满有序度,N*(N-1)/2逆序度=满有序度
.魚肉
·
2023-11-11 02:26
C语言
数据结构
排序算法
算法
数据结构
算法笔记之2-路归并排序
2-路归并排序2-路归并
排序算法
简介:2-路归并
排序算法
图解:2-路归并排序代码实现(递归):2-路归并排序代码实现(非递归):2-路归并排序应用举栗:2-路归并
排序算法
简介:归并排序是一种基于“归并”
忧郁三角龙ଲ
·
2023-11-11 02:56
算法笔记
归并
排序算法
(介绍+图解+源码+性能)
此为第四篇,归并
排序算法
。归并排序“归井”的含义是将两个或两个以上的有序表组合成一个新的有序表。
Xtiz
·
2023-11-11 02:55
#
排序算法
算法
数据结构
排序算法
【
排序算法
】02:归并排序、快速排序
归并排序原理与代码性能分析时间复杂度空间复杂度稳定性改成非递归形式二、快速排序(Quicksort)原理初步代码最好和最坏时间复杂度优化分区算法随机法三数取中法性能分析时间复杂度空间复杂度稳定性改成非递归形式和其他
排序算法
的结合前言时间复杂度为
Segmentfaulttt
·
2023-11-11 02:25
数据结构与算法
java
算法
排序算法
数据结构与算法XS班-左程云第八节课笔记(归并排序和快速排序)
递归版本(图解
排序算法
(四)之归并排序-dreamcatcher-cx-博客园(cnblogs.com))packageclass08;publicclassCode02_MergeSort{//递归方法实现
BAEK°
·
2023-11-11 02:49
数据结构与算法新手班-左程云
算法
数据结构
排序算法
算法基础
课-动态规划
一、背包问题什么样的问题可以被称作为背包问题?换言之,我们拿到题目如何透过题目的不同包装形式看到里面背包问题的不变内核呢?给定一个背包容量target,再给定一个数组nums(物品),能否按一定方式选取nums中的元素得到target。1、背包容量target和物品nums的类型可能是数,也可能是字符串2、target可能题目已经给出(显式),也可能是需要我们从题目的信息中挖掘出来(非显式)(常见
李加号pluuuus
·
2023-11-10 22:08
算法
动态规划
数据结构源码笔记(C语言):可变长度字符串的快速排序
//实现可变长度的字符串序列快速
排序算法
#include#include#include#defineMaxL50//最大的字符串长度typedefstructnode//记录类型{intstart;/
半个冯博士
·
2023-11-10 18:49
数据结构源码笔记(C语言)
数据结构
算法
字符串
c语言
快速排序
排序算法
复杂度
文章目录选择排序直接选择排序堆排序插入排序直接插入排序希尔排序交换排序冒泡排序快速排序归并排序桶排序计数排序基数排序选择排序直接选择排序时间复杂度O(n^2)空间复杂度O(1)稳定finalstaticclassselectSort{publicselectSort(int[]arr){Sort(arr,arr.length);}privatevoidSort(int[]arr,intn){for
小健健健
·
2023-11-10 18:41
算法
排序算法
算法
java
非支配快速
排序算法
详解
非支配快速
排序算法
详解对NSGA-II的一个学习记录 为易于理解,只用三个点举例子。
勉为其难免免
·
2023-11-10 17:28
matlab
算法
RSA
算法基础
算法笔记:RSA
算法基础
RSA
算法基础
简介
算法基础
算法详解大整数表示素数产生Euclid算法模幂算法Montgomery算法RSA算法实例RSA-CRTRSA
算法基础
简介RSA算法由RonRivest、
云楼主
·
2023-11-10 17:56
算法
密码学
Python算法——桶排序
桶排序(BucketSort)是一种非比较性
排序算法
,适用于对一定范围内的浮点数进行排序。它将元素分配到若干个桶中,然后对每个桶中的元素进行排序,最后按照顺序合并所有的桶,得到有序数组。
Echo_Wish
·
2023-11-10 14:37
数据结构与算法
Python
笔记
Python算法
算法
python
数据结构
Python算法——基数排序
基数排序(RadixSort)是一种非比较性
排序算法
,适用于对整数或字符串等数据进行排序。
Echo_Wish
·
2023-11-10 14:37
数据结构与算法
Python
笔记
Python算法
算法
python
java
排序算法
的空间复杂度和时间复杂度
一、
排序算法
的时间复杂度和空间复杂度
排序算法
平均时间复杂度最坏时间复杂度最好时间复杂度空间复杂度稳定性冒泡排序O(n²)O(n²)O(n)O(1)稳定直接选择排序O(n²)O(n²)O(n²)O(1)不稳定直接插入排序
Sword52888
·
2023-11-10 10:01
排序算法
算法
数据结构
【程序员怎样才能学好算法】《算法秘籍》给出答案
全书共13章,讲述了常见的数据结构、
排序算法
、位运算、树、递归、回溯算法、贪心算法、双指针和滑动窗口、BFS和DFS、前缀和、动态规划、并查集、其他经典算法等知识。
秋说
·
2023-11-10 10:39
Web
算法
数据结构
编程
程序员必读
选择排序(图解+C代码)
算法原理:选择排序是一种简单直观的
排序算法
。
一个静心远航者
·
2023-11-10 09:45
排序算法
排序算法
排序
c语言
对链表进行插入排序(C语言实现)
插入
排序算法
:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。重复直到所
tangke121
·
2023-11-10 09:43
经典题型
C语言
数据结构
链表
数据结构
插入排序
算法
c语言
排序算法
——直接插入排序(图解+代码)
文章目录直接插入排序1.从前往后比较1.1图解直接插入排序1.2C语言实现2.从后往前比较2.1图解直接插入排序2.2C语言实现直接插入排序遍历数组进行比较,移动其他数据位置,直接插入。从小到大进行排序时间复杂度O(n2)如果数组本身有序,则时间复杂度降为O(n)空间复杂度O(1),稳定1.从前往后比较1、遍历数组,arr[i]从第二个数字到最后一个数字。2、首先定义tmp保存arr[i]的值,避
执行x
·
2023-11-10 09:09
排序算法
算法
数据结构
直接插入排序+希尔排序(C语言实现)
本篇文章我将向大家介绍两种插入
排序算法
:直接插入排序和希尔排序。其中直接插入排序是一种比较基础的排序方法,较容易理解,但是效率不高。
折木`
·
2023-11-10 09:07
数据结构
数据结构
排序算法
c语言
简单选择排序(c语言代码实现)
选择排序:简单选择排序(不稳定的排序)简单选择排序是一种基础的
排序算法
,它的基本思路是在未排序的序列中选择最小(或最大)的元素,将其与序列的第一个元素进行交换,然后在剩余的未排序序列中继续使用同样的方式进行选择和交换
认真敲代码的小火龙
·
2023-11-10 09:36
排序
算法
数据结构
c语言
冒泡、选择、插入
排序算法
(c语言)实现
几种常见
排序算法
的实现一、冒泡排序1.百度百科冒泡排序(BubbleSort),是一种计算机科学领域的较简单的
排序算法
。
轻舟 /
·
2023-11-10 09:36
数据结构
算法
排序算法
插入排序与Shell排序(图解+代码实例)
排序算法
在编写代码的过程当中应用十分广泛,作用非常重要。它的作用就是将一个排序混乱的序列按照一定的规则排列有序。下面一张图基本可以清晰的表示
排序算法
的分类。
Frank-Hu
·
2023-11-10 09:04
C语言
算法
排序算法
数据结构
算法
c语言
数据结构 排序 (图解+C语言)
10000个以上各种排序的统一函数名规范:voidX_Sort(ElementTypeA[],intN);排序名称待排元素数组大小放在数组里元素类型包括所有能排大小的数据结构,比如数字,字符串等等,都可以用
排序算法
鸿雁丨红豆灬
·
2023-11-10 09:33
学习笔记之数据结构
数据结构
排序算法
c语言
php冒泡算法实现倒序和正序排列
冒泡排序是一种简单的
排序算法
,其主要思想是比较相邻的两个元素,根据需要交换位置,将较大(或较小)的元素逐渐冒泡到数组的一端,从而实现排序。
PHP隔壁老王邻居
·
2023-11-10 08:34
乱七八糟
php
算法
开发语言
php
笔记
后端
数据结构之排序
假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种
排序算法
是稳定的
萤火夜
·
2023-11-10 02:53
排序算法
算法
数据结构
C语言
排序算法
-冒泡、选择、插入、希尔、堆、归并、快速、拓扑
目录结构排序要用到的结构和函数Prelimitation.h#ifndefSORT_PRELIMITATION_H#defineSORT_PRELIMITATION_H#defineMAXSIZE10//用于要排序数组个数最大值typedefstruct{intr[MAXSIZE];//用于存储要排序数组,r[0]可当做临时变量intlength;//用于记录顺序表的长度}SqList;/***交
早知道不学Java了
·
2023-11-10 01:24
C语言
排序算法
算法
算法
c语言
排序算法
七大
排序算法
,冒泡排序 选择排序 插入排序 希尔排序 堆排序 快速排序 归并排序的深度讲解
目录排序:冒泡排序:冒泡排序的思路:我们根据思路进行冒泡排序的时间复杂度的分析:代码实现:选择排序:选择排序的思路:选择排序的复杂度分析:代码实现:插入排序:插入排序的复杂度分析:代码实现:希尔排序:希尔排序的复杂度分析:代码实现:堆排序:堆排序的复杂度分析:代码实现:快速排序:1、hoare法代码:2、挖坑法:代码:前后指针法:代码:快速排序的复杂度分析:快速排序的优化方案:三位取中:趋于有序时
sekiro&mikasa
·
2023-11-10 01:52
java
算法
排序算法
算法
数据结构
java
归并排序详解
目录一.归并排序介绍二.归并
排序算法
的特点三.归并算法的实现介绍一.归并排序介绍归并排序是建立在归并操作上的一种有效,稳定的
排序算法
,该算法是采用分治法的一个非常典型的应用。
疏 石 兰 兮
·
2023-11-10 01:24
排序算法
算法
数据结构
归并排序 和 逆序对 联动
归并排序(MergeSort)是一种经典的分而治之(DivideandConquer)
排序算法
,常被用于对数组或列表进行排序。
wniuniu_
·
2023-11-10 00:31
c++
算法
排序算法
算法
数据结构
[Acwing
算法基础
课]3.搜索与图论(一)笔记
文章目录一、DFS和BFS1.1DFS1.2BFS1.3图的存储方式与遍历1.4有向图的拓扑序列二、最短路径问题2.1朴素Dijkstra算法2.2堆优化版的Dijkstra算法2.3Bellman-Ford算法2.4SPFA算法2.4.1SPFA算法求最短路径2.4.2SPFA算法判断负环2.5Floyd算法一、DFS和BFS数据结构空间备注DFSstackO(h)O(h)O(h)(树的高度相关
sx失去理智
·
2023-11-10 00:28
Acwing算法基础课笔记
算法
图论
深度优先
acwing
算法基础
课-第三章 搜索与图论
搜索与图论数与图的存储方式DFSAcWing842排列问题AcWing843n-皇后问题BFSAcWing844走迷宫AcWing845八数码树与图的深度优先遍历模板AcWing846树的重心(模板题)树与图的广度优先遍历模板AcWing847图中点的层次(模板题)拓扑排序模板AcWing848有向图的拓扑序列(模板题)最短路径Dijkstra模板AcWing849Dijkstra求最短路径I(模
偶然路过的帅小伙z
·
2023-11-10 00:58
#
算法
-
acwing算法基础课
图论
算法
acwing
算法基础
课第三讲搜索与图论复习总结
最近备考蓝桥杯,准备把之前
算法基础
课题目都复习一遍,冲(*^▽^*)1.排列数字这里的排列数字排列的是组合数通过深度优先搜索来做st[]数组判断每个数字是否使用过(因为组合数排列,每个数字只能用一次)深度优先搜索的题目可以先画出递归搜索树依据枚举到了哪个位置来进行搜索
~.q快乐(^_^ )
·
2023-11-10 00:58
算法
图论
深度优先
Acwing
算法基础
课-搜索与图论-模板习题
目录一、DFS1.排列数字2.n-皇后问题二、BFS1.走迷宫2.八数码二、树与图的深度优先遍历DFS树的重心三、树与图的广度优先遍历BFS图中点的层次四、拓扑排序有向图的拓扑序列五、Dijkstra1.Dijkstra求最短路I(朴素)2.Dijkstra求最短路II(堆优化)六、bellman-ford有边数限制的最短路七、spfa1.spfa求最短路2.spfa判断负环八、FloydFloy
Yang 丶。
·
2023-11-10 00:57
c++
c语言
算法
推荐算法
[ACWing
算法基础
课]:第三章 - 搜索与图论基础
文章目录一、拓扑排序二、求最短路1.Dijkstra算法★1.1朴素Dijkstra算法O(n^2^)1.2堆优化的Dijkstra算法O(mlogn)★2.Bellman-Ford算法3.SPFA算法★3.1SPFA求最短路3.2SPFA判断负环一、拓扑排序题目描述:输入43122434输出1324C++代码如下#include#include#include#includeusingnames
TBD1
·
2023-11-10 00:57
ACWing算法基础
图论
算法
c++
数据结构
AcWing
算法基础
课----搜索与图论(三) 笔记 (最小生成树 + 二分图)
搜索与图论最小生成树1.朴素版prim算法(稠密图)O(n^2)2.Kruskal算法(稀疏图)O(mlogm)二分图1.染色法判别二分图O(n+m)2.匈牙利算法O(nm)图论题难点:如何抽象成图论问题并实现建图最小生成树☆无环★1.朴素版prim算法(稠密图)O(n^2)s:当前已在连通块中最短距离的点算法思路:初始化距离dist[i]=infn次迭代for(inti=0;idist[j]))
彡倾灬染|
·
2023-11-10 00:57
AcWing
算法学习笔记
图
c++
c语言
AcWing
算法基础
课-第三章 搜索与图论(一)
0、本节所讲内容1、深度优先搜索(DFS)2、宽度优先搜索(BFS)3、树与图的存储4、树与图的深度优先遍历5、树与图的宽度优先遍历6、拓扑排序一、深度优先搜索(DFS)深搜尽可能的往深里边搜这里有两个概念:回溯和剪枝讲两个经典题:全排列问题和N皇后问题。1、全排列问题原题链接:842.排列数字#includeusingnamespacestd;constintN=10;intn;intpath[
cBreakALeg
·
2023-11-10 00:56
算法
AcWing
算法基础
课 Level-2 第三讲 搜索与图论
单链表#includeusingnamespacestd;constintN=1e5+10;//head表示头结点的下标//e[i]表示节点i的值//ne[i]表示节点i的next指针是多少//idx存储当前已经用到了哪个点inthead,e[N],ne[N],idx;//初始化voidinit(){head=-1;idx=0;}//将x插到头结点voidadd_to_head(intx){e[i
5pace
·
2023-11-10 00:26
算法
数据结构
c++
(Acwing
算法基础
课)——图论之朴素迪杰斯特拉算法
图论之朴素迪杰斯特拉1.原题地址之前自己蓝桥杯拿到省二第一名,非常遗憾没有进入决赛的原因就是图论的两个题目一个都不会写,因为自己但是做完了往前十年的题目,省赛都是没有考过图论的,所以我当时打算的就是进入决赛之后再学习图论,没想今年蓝桥杯的题目风格大变,让我措手不及,也酿成了我大三最大的遗憾,所以我打算再准备一年,反正保研了大四会轻松些,我一定要拿到国奖!附上Acwing上的该题链接:Acwing8
大风起兮x
·
2023-11-09 23:54
Acwing算法基础课
算法
图论
数据结构
【AcWing
算法基础
课】第三章 搜索与图论
文章目录前言课前温习一、深度优先搜索(DFS)1、排列数字1.1题目描述1.2思路分析1.3代码实现2、n-皇后问题1.4题目描述1.5思路分析1.6代码实现二、宽度优先搜索(BFS)1、走迷宫2.1题目描述2.2思路分析2.3代码实现三、树与图的存储四、树与图的遍历1、深度优先遍历(846.树的重心)核心模板4.1题目描述4.2思路分析4.3代码实现2、宽度优先遍历(847.图中点的层次)核心模
-dzk-
·
2023-11-09 23:54
算法基础课笔记
算法
图论
深度优先
最短路算法
数据结构
c++
最小生成树
acwing
算法基础
笔记第三章搜索与图论
BFS第一次搜到的点一定是离第一个点最近的点,每个DFS都一定对应一条搜索树,#includeusingnamespacestd;constintN=10;intn;intpath[N];//path存储路径,到叶节点的时候,就填好路径上的点了,u等于0的时候在第一层,u为1为第二层,u为2在第三层,u等于3的时候是最后一层。所以u==n的时候是最后一层boolst[N];voiddfs(intu
一只QAQ
·
2023-11-09 23:53
算法
图论
笔记
acwing
算法基础
之搜索与图论--树与图的遍历
目录1基础知识2模板3工程化1基础知识树和图的存储:邻接矩阵、邻接表。树和图的遍历:dfs、bfs。2模板树是一种特殊的图(即,无环连通图),与图的存储方式相同。对于无向图中的边ab,存储两条有向边a->b,b->a。因此我们可以只考虑有向图的存储。(1)邻接矩阵:g[a][b]存储边a->b(2)邻接表://对于每个点k,开一个单链表,存储k所有可以走到的点。h[k]存储这个单链表的头结点int
YMWM_
·
2023-11-09 23:21
C++学习
Acwing
算法
图论
深度优先
支持C#的开源免费、新手友好的数据结构与算法入门教程 - Hello算法
前言前段时间完成了C#经典十大
排序算法
(完结)然后有很多小伙伴问想要系统化的学习数据结构和算法,不知道该怎么入门,有无好的教程推荐的。
追逐时光者
·
2023-11-09 23:13
C#
开源项目
面试指南
c#
开发语言
算法
数据结构
acwing
算法基础
班学习笔记-第三讲.搜索和图论
一、DFS深度优先遍历,需要维护一个st数组来表示每个节点是否被访问过,若不止一条路径则还需要恢复st数组的值(恢复状态)。剪枝:当遍历除了节点是否被访问以外还有其他条件时,可同时判断条件是否成立和节点是否被访问,若不成立则跳过该节点,最后只返回走到终点的路径。树和图的深度优先遍历问题:树的重心。可用节点的子节点个数s代表一个子连通分量,n-s代表除去这个节点和其子节点外其他所有节点的个数,迭代更
irony_202
·
2023-11-09 19:19
图论
算法
学习
【AcWing
算法基础
】第三讲 搜索与图论
一、DFS1.1排列数字是全排列的问题,很经典的dfs题,没什么难度,硬敲就行#includeusingnamespacestd;constintN=10;intn;intpath[N];boolst[N];voiddfs(intcnt){if(cnt==n){for(inti=0;i>n;dfs(0);}1.2n-皇后问题皇后可以上下左右和斜着走第一种方法和全排列的思想一样,其中对角线的下标需要
flowral
·
2023-11-09 19:18
算法
图论
算法
c++
dfs
bfs
acwing
算法基础
之搜索与图论--DFS
目录1基础知识2模板3工程化1基础知识调用dfs()之后表示已经走到头了,需要往回走了(即,回溯),那这时候就要恢复成调用dfs()之前的模样(即,恢复现场)。不同的搜索顺序,对应着不同的耗时。2模板题目1:输出1,2,3,…,n的全排列,按照字典序输出。#includeusingnamespacestd;constintN=10;intpath[N];boolst[N];intn;voiddfs
YMWM_
·
2023-11-09 19:18
Acwing
C++学习
深度优先
算法
图论
acwing
算法基础
之搜索与图论--BFS
目录1基础知识2模板3工程化1基础知识BFS可以用来求取最短路,前提条件是所有边的权重一样。2模板题目1:走迷宫,从左上角走到右下角,求最短路。#include#include#includeusingnamespacestd;constintN=110;intd[N][N];intg[N][N];intn,m;intbfs(){memset(d,-1,sizeofd);queue>q;q.pus
YMWM_
·
2023-11-09 19:44
Acwing
C++学习
算法
图论
宽度优先
五大常用算法:分治、动态规划、贪心、回溯和分支界定
这个技巧是很多高效算法的基础,如
排序算法
(快速排序,归并排序),傅立叶变换(快速傅立叶变换)……任何一个可以用计算机求解的问题所需的计算时间都与其规模有关。问题
mini_qiu
·
2023-11-09 17:47
算法
分治法
动态规划
回溯法
分支限界法
贪心法
【备战秋招系列-3】Java高频知识点——排序、设计模式、JavaSE、JVM
排序算法
9P1:分类
排序算法
可以分为内部排序和外部排序,在内存中进行的排序称为内部排序,当要排序的数据量很大时无法全部拷贝到内存,这时需要使用外存进行排序,这种排序称为外部排序。
2020GetGoodOffer
·
2023-11-09 09:19
备战秋招
java
上一页
40
41
42
43
44
45
46
47
下一页
按字母分类:
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
其他