文章 2022-11-01 来自:开发者社区

数据结构学习笔记——交换排序(冒泡排序和快速排序)

一、交换排序的概念交换排序通过两两比较待排序的元素,若不满足排序要求则进行交换,直到整个序列有序为止。二、冒泡排序(一)排序思想按照一定的次序(从前往后或从后往前,对应递减和递增)两两比较相邻的元素,若为逆序(r[i-1]<r[i]或r[i]>r[i+1]),则进行交换,直到整个序列都比较完结束,即第一趟冒泡排序结束【第一趟冒泡排序后有一个最小或最大的元素放在排序的最终位置】。然后,....

数据结构学习笔记——交换排序(冒泡排序和快速排序)
文章 2022-10-28 来自:开发者社区

【数据结构与算法】:交换排序之快速排序(手绘图解+LeetCode原题)

排序算法:快速排序一、快速排序1.什么是快速排序?2.快速排序的基本原理。3.实现快速排序的具体过程。二、算法优化三、快速排序代码实现(优化后)。四、算法分析时间复杂度五、快排思想在实际题目中的运用题目一、剑指Offer 40.最小的k个数一、快速排序1.什么是快速排序?快速排序是交换排序的一种,本质上快速排序就是采用“分而治之”的策略(分治法),将问题规模减小,再而对问题分别进行处理的排序算法....

【数据结构与算法】:交换排序之快速排序(手绘图解+LeetCode原题)
文章 2022-10-19 来自:开发者社区

【数据结构】交换排序—冒泡排序、快速排序

一、什么是交换排序?1.交换排序的基本思想是两两比较待排序记录的关键字,若两个记录的次序相反则交换这两个记录,直到没有反序的记录为止。2.交换排序主要方法:冒泡排序快速排序二、冒泡排序1、什么是冒泡排序?冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访....

【数据结构】交换排序—冒泡排序、快速排序
文章 2021-12-01 来自:开发者社区

【愚公系列】2021年11月 C#版 数据结构与算法解析(交换排序-快速排序)

1、快速排序(Quick Sort)快速排序的基本思想:通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。1.1 算法描述快速排序使用分治法来把一个串(list)分为两个子串(sub-lists)。具体算法描述如下:从数列中挑出一个元素,称为 “基准”(pivot);重新排序数列,所有元素比基准值小的摆....

【愚公系列】2021年11月 C#版 数据结构与算法解析(交换排序-快速排序)
文章 2015-11-30 来自:开发者社区

数据结构例程—— 交换排序之快速排序

本文是[数据结构基础系列(9):排序]中第5课时[ 交换排序之快速排序]的例程。 1.以第1个元素作为基准 #include <stdio.h> #define MaxSize 20 typedef int KeyType; //定义关键字类型 typedef char InfoType[10]; typedef struct //记录类型 { K...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

算法编程

开发者社区在线编程频道官方技术圈。包含算法资源更新,周赛动态,每日一题互动。

+关注
X
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等