文章 2024-10-16 来自:开发者社区

数据结构与算法学习十二:希尔排序、快速排序(递归、好理解)、归并排序(递归、难理解)

前言 上节的三个排序算法:冒泡、选择、插入,较为简单,好理解,使用比较、交换的思想。但也都是基础。 这节的三个排序算法:希尔、快速【看注释比较容易理解思路】、归并,难理解,使用递归的思想。 这三个是难点,但也是重点。加油 一、希尔排序 1.1 简单插入排序存在的问题 我们看简单的插入排序可能存在的问题.数组 arr = {2,3,4,5,6,1} 这时需要插入的数 1(最小), 这样的...

数据结构与算法学习十二:希尔排序、快速排序(递归、好理解)、归并排序(递归、难理解)
文章 2024-10-08 来自:开发者社区

【初阶数据结构】打破递归束缚:掌握非递归版快速排序与归并排序

一、非递归实现快速排序 void QuickSortNonR(int* a, int begin, int end) { ST s; STInit(&s); STPush(&s, end); STPush(&s, begin); while (...

【初阶数据结构】打破递归束缚:掌握非递归版快速排序与归并排序
文章 2023-08-08 来自:开发者社区

[数据结构 -- 手撕排序算法第七篇] 递归实现归并排序

1、归并的思想这是我们第二次了解归并的思想了,第一次在我们之前的链表oj题里面,合并两个有序链表,我们当时解题的思想就是归并的思想。我们这次来系统的学习一下归并的思想(本篇以升序为例展开):归并两个数组(链表)时,我们使用两个指针指向不同的数组首元素,控制并遍历两个数组,比较两个指针指向的值,小的我们放入开辟的临时数组里面,然后让指向小值的指针往后走一步,继续比较。不断去比,总有一个数组先被遍历....

[数据结构 -- 手撕排序算法第七篇] 递归实现归并排序

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

算法编程

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

+关注