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

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

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

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

【C语言/数据结构】排序(快速排序及多种优化|递归及非递归版本)

交换排序 快速排序 快排的过程图如下: hoare版代码呈现 ...

【C语言/数据结构】排序(快速排序及多种优化|递归及非递归版本)
文章 2024-01-23 来自:开发者社区

数据结构排序——详细讲解归并排序(c语言实现递归及非递归)

上次是快排和冒泡今天为大家带来归并排序1.基本思想归并排序是一种分治算法,它将序列分成两个子序列,分别对子序列进行排序,然后将排序好的子序列合并起来。这个过程可以递归地进行,直到序列长度小于等于1时停止递归。在合并子序列的过程中,需要比较两个子序列的元素,并按顺序将它们合并成一个有序序列注意:归并排序的关键在于合并两个有序的子序列,这一步需要额外的空间来存储中间结果。在实际的实现中,可以使用递归....

数据结构排序——详细讲解归并排序(c语言实现递归及非递归)
文章 2024-01-17 来自:开发者社区

数据结构和算法面试题:实现一个函数,将一棵二叉树转换为它的镜像。(递归或者非递归实现)

数据结构和算法面试题:实现一个函数,将一棵二叉树转换为它的镜像。(递归或者非递归实现)简介:实现一个函数,将一棵二叉树转换为它的镜像。(递归或者非递归实现)该算法的实现思路如下:对于当前节点,交换其左右子树。递归地对该节点的左右子树进行镜像转换。下面是使用C++实现将一棵二叉树转换为它的镜像(非递归实现)的代码,并附带详细注释:#include <iostream> #include....

文章 2022-10-20 来自:开发者社区

数据结构与算法—二叉树的层序、前序中序后序(递归、非递归)遍历

前言前面介绍了二叉排序树的构造和基本方法的实现。但是排序遍历也是比较重要的一环。所以笔者将前中后序.和层序遍历梳理一遍。了解树的遍历,需要具有的只是储备有队列,递归,和栈。这里笔者都有进行过详细介绍,可以关注笔者数据结构与算法专栏。持续分享,共同学习。层序遍历层序遍历。听名字也知道是按层遍历。我们知道一个节点有左右节点。而每一层一层的遍历都和左右节点有着很大的关系。也就是我们选用的数据结构不能一....

数据结构与算法—二叉树的层序、前序中序后序(递归、非递归)遍历

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

算法编程

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

+关注