考研数据结构与算法之排序专题一 快速排序

Redis偶发Cannot determine a partition for slot报错问题 lettuce 6.2.0.RELEASE 版本存在的Cannot determine a partition for slot报错 阅读详情

       基本思想:通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,已达到整个序列有序。

一趟快速排序的具体做法是:附设两个指针low和high,他们的初值分别为low和high,设枢轴记录的关键字为pivotkey,则首先从high所指位置起向前搜索找到第一个关键字小于pivotkey的记录和枢轴记录互相交换,然后从low所指位置起向后搜索,找到第一个关键字大于pivotkey的记录与枢轴记录互相交换,重复这两步直至low=high为止。 

代码如下:

#include <stdio.h>
#include <stdlib.h>
void Q_S(int s[], int low,int high){
	int privotKey = s[low];
	int l_tmp = low;
	int h_tmp = high;
	while (low < high)
	{
		while (low < high && s[high] >= privotKey)
		{
			high--;
		}
		s[low] = s[high];
		while (low < high && s[low] <= privotKey){
			low++;
		}
		s[high] = s[low];
	}
	s[low] = privotKey;
	if (low != l_tmp)
		Q_S(s, l_tmp, low - 1);
	if (high != h_tmp)
		Q_S(s,  high + 1,h_tmp);
}

int main(int argc, char *argv[]){
	int s[10] = { 99, 45, 34, 36, 86, 36, 79, 96, 53, 97 };\

	int i, n = 10;
	for (i = 0; i < n; i++)
		printf("%d ", s[i]);
	printf("\n");
	Q_S(s, 0,9);
	for (i = 0; i < n; i++)
		printf("%d ", s[i]);
	printf("\n");
	system("pause");
	return 0;


【考研】数据结构考点——快速排序(重点,含408真题) 本文内容源于对《数据结构(C语言版)》(第2版)、王道讲解学习所得心得、笔记整理和总结。交换排序的基本思想:两两比较待排序记录的关键字,一旦发现两个记录不满足次序要求时则进行交换,直到整个序列全部满足要求为止。交换排序的主要两种方法:冒泡排序、快速排序本文内容主要针对快速排序。(快排,要求要掌握其算法,是考研中的重点考查内容)在本文最后的练习中,以举例子说明该排序方法,配以图文,讲解详细(含408真题)。......... 阅读详情

相关推荐

【数据结构排序算法篇】----快速排序【实战演练】

学习快速排序,最重要的就是学会分治思想,对于pivot的选择有很多种,这让我们产生了如何使用更加合适的pivot时代码变得更加高效,下面我们就开始谈谈快速排序。快速排序是一个高效的排序算法,由C.A.R. Hoare在1960年提出。因其平均时间复杂度为O(n log n)而被广泛使用,并且还具有原地排序(不需要额外大量的内存空间)的优点。这种算法的基本思想是分治策略,通过一个称为"pivot"(中枢或枢轴)的元素来将原数组分割成两个子数组。选择pivot(枢轴元素)从数组中选择一个元素作为pivot。

m0_71685576的博客 1676

springboot 项目连接Redis 集群启动报错资源覆盖不完整

报错信息摘要提示如下: io.lettuce.core.cluster.PartitionSelectorException:Cannot determine a partition to read for slot 原因 如提示: slot 没有重新分配到每个node节点,可能跟redis开启集群功能有关系 解决办法 检查每个节点的slot覆盖情况: 进入redis安装目录下执行如下命令: ...

weixin_43791937的博客 3387

【专栏必读】王道考研408数据结构+算法设计与分析万字笔记使用说明及章节导航

各位老铁思维导图在我整理完笔记后会放上去的,我需要根据王道的思维导图重新再做一遍 文章目录一:有关注意事项二:关于专栏三:学习建议四:各专栏导航(各位老铁别催,质量优先)(1)第一章:绪论(2)第二章:线性表(3)第三章:栈和队列第四章:串第五章:二叉树第六章:图 首先感谢王道大大(手动比心),很用心在做了,大家可以看其中两节是否符合胃口 (王道408考研数据结构)第五章树-第三节1:二叉树遍历(先序、中序和后序) (王道408考研数据结构)第五章树-第四节2:平衡二叉树(AVL)及其旋转 一:有.

快乐江湖的博客 5万+

redis集群问题:服务器重启后,Cannot determine a partition for slot 5619或者CLUSTERDOWN The cluster is down报错的解决办法

Cannot determine a partition for slot 5619或者CLUSTERDOWN The cluster is down

shinexunmeng的博客 1514

(王道408考研数据结构)第八章排序-第四节2:快速排序

如需了解其他排序方式,请移步 数据结构_排序算法(详细演示,看完就会) 文章目录一:基本思想二:代码(1)单趟排序分析(2)完整排序(3)快速排序的弊端:小优化 一:基本思想 快速排序它是一种基于二叉树结构的交换排序方法,其基本思想为:每趟排序时任意选取该趟序列中的某个元素(一般选择第一个或最后一个)作为基准元素,然后将整个序列划分为左右两个部分,其中左侧部分均小于基准元素,右侧部分均大于基准元素(升序),然后对左右两个部分的序列继续执行上述操作。 其大致流程如下 二:代码 (1)单趟排序分析 (升序

快乐江湖的博客 2403

【考研】数据结构常考九个排序算法关键代码汇总

本文主要针对直接插入排序、希尔排序、快速排序、堆排序、归并排序等九个排序算法的关键代码进行汇总,方便复习。【考研】数据结构考点——直接插入排序_住在阳光的心里的博客-优快云博客【考研】数据结构考点——折半查找和折半插入排序_住在阳光的心里的博客-优快云博客【考研】数据结构考点——希尔排序_住在阳光的心里的博客-优快云博客_希尔排序dk【考研】数据结构考点——直接选择排序_住在阳光的心里的博客-优快云博客【考研】数据结构考点——堆排序(含408真题)_住在阳光的心里的博客-优快云博客。

qq_34438969的博客 2068

springboot 连接redis报错解决

springboot 连接redis报错: ERROR 19830 — [nio-8081-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception org.springf...

盗忆空间的博客 2183

Python使用netmiko配置华为交换机

1.netmiko就是专门为网络设备做的模块,非常强大。1.更适合网络设备的自动化运维模块。2、批量配置变更、备份。1.安装netmiko。2. 创建SSH连接。一、netmiko介绍。

博然的宝藏库 2795

spring boot2 集成redis时的错误

    &lt;parent&gt;         &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;         &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;         &lt;version&gt;2.0.0.RELEASE&lt;/vers...

正在编程 1507

AI辅助SCI论文大修:一键生成回复信+同步修改稿,效率提升300%

AI可以针对多位审稿人的意见进行逐点(point-by-point)回复,语言地道流畅,能够处理邮件格式、礼貌性回复和部分内容修正。最新的LLM:GPT-5, Claude 4.1都是带有agentic功能,能规划复杂任务,并调用工具执行复杂任务的大模型。有时候审稿人意思模棱两可,你的反复揣摩ta关注的点是什么,回复的不好,很有可能下一轮被reject。这个2.0升级版,除了在response中完美rebuttle,在文中对应部分的修改,也会帮你一并呈现,基本上就是可以直接拿来用的版本;

dinaxuejie的博客 1664

用 SQL 分析不同用户群组留存率

一、前言 用户增长对企业非常重要,主要包括: 新增、留存、召回 。本文介绍一个实用的分析留存率的方法: Cohort Analysis (群组分析),APP的下载量越高并不是说产品就越好,产品若没有很好的留存,花费大量时间和资源来挖掘新客户也将是竹篮打水一场空。群组分析有利于衡量用户在每个漏斗的用户流失节点、用户流失数据,从而帮助你发现产品的用户的行为模式和用户增长点。从本质上讲,群组分析Cohort Analysis为你提供了一种数据驱动的方法,用群组分析Cohort Analysis方法,可以来帮助提

qq_39984050的博客 3172

22计算机408考研—数据结构—排序(详解加例题)

排序 排序的基本概念 顾名思义,给一个无序数组的值进行顺序存储 原数组:2 3 1 5 6 4 8 9 7 排序后:1 2 3 4 5 6 7 8 9 直接插入排序 思路: 插入 == 把数插进去 也是两层循环 数组num 第一层循环从下标为1的值开始,循环变量为i 第二层循环就是把第一层的值拿出来,然后从第i-1个向前循环,找到第一个小于num[i]的值, 这个值的下标如果是j-1的话,那么num[j]就是第一个大于num[i]的值 把num[i]用一个变量temp保存一下 把下标为j到i-1的值依次向

日常发呆 2万+

AI气象预报:数值模式融合与短临预警的工程实践

气象预报正经历从物理推演到数据驱动的认知范式转变。AI气象预报并非替代传统数值模式,而是通过数值模式融合弥补其在参数化误差、初值敏感性和计算效率上的固有瓶颈。其技术价值在于提升短临预警时效性与空间精度,支撑航空调度、电力调控、防洪应急等关键场景。实践中需兼顾物理一致性、可解释性与业务系统兼容性,避免纯黑箱建模带来的外推失效与不确定性缺失风险。本文聚焦AI作为超分辨率引擎、误差矫正器和短临加速器的三类落地路径,解析HEALPix投影、多尺度图建模、轻量级U-Net等核心适配方法。

weixin_28221501的博客 298

【建议收藏】数据结构考研常用的8种排序算法

排序算法1.冒泡排序2. 最近在准备考研,正好在学习数据结构的排序,发现下面这位大佬总结的很详细,不过是用java,我得用c++来考试,所有用c++来总结一下。 图片均来自于: 作者:三四月事八九月果 java实现10种排序算法 https://blog.youkuaiyun.com/weixin_44531966/article/details/116464294 c++代码学习:天勤考研 1.冒泡排序 #include <bits/stdc++.h> using namespace std; voi

qq_45137584的博客 3796

不用写代码!用AIStarter 5.0.0离线包部署InfiniteTalk的完整指南(Windows/Mac/Linux全平台)

本文详细介绍了如何使用AIStarter 5.0.0离线包在Windows、Mac和Linux平台上零代码部署InfiniteTalk数字人。从环境准备、离线资源获取与验证,到全平台部署实操指南,提供了完整的本地化安装流程和优化建议,帮助用户快速实现AI项目的一键部署。

weixin_30275415的博客 273

华为eNSP实战:手把手教你配置DHCP全局地址池(含AP固定IP分配)

本文通过华为eNSP模拟器,详细演示了如何配置DHCP全局地址池,为不同业务VLAN动态分配IP地址,并重点讲解了如何通过MAC地址绑定为接入点(AP)分配固定IP。文章涵盖了从拓扑设计、基础网络搭建到地址池精细配置、验证测试及常见故障排查的全流程,是网络工程师掌握企业级DHCP部署与AP管理的实用指南。

weixin_29235923的博客 599

考研心得:考研数据结构算法大全

本人考研的算法笔记,包含考研数据结构会涉及到的算法,全部掌握让你考研算法题稳稳拿下!!

PCGuo999的博客 2万+

STM32F103开发实战:如何用CubeMX+CLion调整Flash起始地址(附完整CMake配置)

本文详细介绍了在STM32F103开发中如何使用CubeMX和CLion工具链调整Flash起始地址,包括链接脚本修改、系统文件配置和CMake工程适配。通过实战步骤和完整配置示例,帮助开发者实现固件双备份、OTA升级等高级功能,提升嵌入式开发效率。

5b6n7m8的博客 209

王道数据结构课代表 - 考研数据结构 第八章 排序(内部排序:八大排序动图演示与实现 + 外部排序) 究极精华总结笔记(C版本)

数据结构与算法 笔记导航🚥🚥🚥 🥬 第一章 绪论 🥕 第二章 线性表 🥪 第三章 栈和队列 🍊 第四章 串-KMP(看毛片算法) 🍒 第五章 树和二叉树 🍀 第六章 图 🍚 第七章 查找(B树、散列表) 🧄 第八章 排序 (内部排序:八大排序动图演示与实现 + 外部排序) 🍔 数据结构与算法 复试精简笔记 🎨 408 全套初复试笔记汇总 传送门 🏃‍🏃‍🏃‍ 如果本篇文章对大家起到帮助的话,跪求各位帅哥美女们,求赞👍 、求收藏、求关注!

clzZ2的博客 1万+

《QGIS快速入门与应用基础》293:色带调整与透明设置

详细讲解了QGIS中遥感影像色带调整与透明设置的核心技术,帮助用户将遥感成果从基础合成提升到专业出图标准。主要内容包括: 色带精细化调整: 多波段真/假彩色合成的优化技巧(Gamma校正、色彩平衡、色阶端点校准) 单波段栅格数据的伪彩色规范设置(行业标准色带选择与分类方法) 透明设置: 研究区黑边/白边的消除方法 多图层叠加时的透明融合技巧 特定地物的差异化半透明显示 实用建议: 提供行业标准参数模板和效果对比图 标注新手操作红线和常见问题排查 强调符合遥感行业规范的可视化要求。

LuckyHanMo的博客 354

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

计算机保研/考研面试题——数据结构与算法篇

时间复杂度衡量了算法运行所需的时间资源。时间复杂度分析关注的是算法在最坏情况下的时间消耗。

安晴晚风的博客 2万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【数据结构】- 【考研复试面试题】-汇总大合集

数据结构-考研复试面试题-汇总大合集 写在前面的话:第二次写文章,本篇文章涉及内容主要包括数据结构与算法,包含市面上最热门的面试题,加以总结,用于本人的专业课面试复习,包括一些个人理解和总结, 如果能帮到你,欢迎点赞,如有写的不妥当的欢迎指出(WeChat:YEZHENGJIE) 参考主要书目:《数据结构》严蔚敏,以及辅导教材书 王道《数据结构》,天勤《数据结构高分笔记》 文章目录1、常见的数............

weixin_40852935的博客 2万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

数据结构算法【考研】

目录: 1.1 统计出单链表HL中结点的值等于给定值X的结点数 2.1 设有一组初始记录关键字序列(K1,K2,… Kn),要求设计一个算法能够在 O(n) 的时间复杂度内将线性表划分成两部分,其中左半部分的每个关键字均小于 Ki ,右半部分的每个关键字均大于等于 Ki 2.2 设有两个集合A和集合B,要求设计生成集合C=A∩B的算法,其中集合A、B和C用链式存储结构表示 3.1 设...

WU2629409421perfect的博客 1万+

数据结构篇——五分钟带你记住常见排序算法口诀

一、前言 二、引言 1、概念 2、与生活相关

ac不知深的博客 5355

【数据结构入门精讲 | 第九篇】考研408排序算法专项练习(一)

1.希尔排序是稳定的算法。(错) 解析:稳定性是指如果两个元素在排序前后的相对顺序保持不变,那么这个排序算法就是稳定的。对于具有相同关键字的元素,排序后它们的相对位置应该保持不变。 2.仅基于比较的算法能得到的最好的“最坏时间复杂度”是O(NlogN)。(对) 3.对N个记录进行归并排序,归并趟数的数量级是O(NlogN)。(错) 答案:O(logN) 4.对N个不同的数据采用冒泡排序进行从大到小的排序,当元素基本有序时交换元素次数肯定最多。(错)

等风来 5754

数据结构 | 【排序】考研相关结论与例题

1.排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一“趟”。下列序列 中,不可能是快速排序第二趟结果的是 A.5, 2, 16, 12, 28, 60, 32, 72 B.2, 16, 5, 28, 12, 60, 32, 72 C.2, 12, 16, 5, 28, 32, 72, 60 D.5, 2, 12, 28, 16, 32, 72, 60 解:D 快速排序如第一趟确定的值是首尾元素,则第二趟只能确定一个数;如第一趟确定的是中间元素,则第二趟会确定两个元素,在递归实现中表示

"You are worthy! You can do it!" 4712
下一篇: 考研数据结构与算法之排序专题二 冒泡排序及优化
For_dongyang
博客等级 码龄12年 10粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

For_dongyang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值