首页
学习
活动
专区
圈层
工具
发布

设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后;在k1值相同的情况下,再看k2,k2值小的在前,大的在后。满足这种要求的

题目: 设线性表中每个元素有两个数据项k1和k2,现对线性表按一下规则进行排序:先看数据项k1,k1值小的元素在前,大的在后;在k1值相同的情况下,再看k2,k2值小的在前,大的在后。...D.先按k2进行简单选择排序,再按k1进行直接插入排序 答题思路: 首先我们要明确题意,这一题的排序是针对k1和k2全体进行的,而不是说我排好k1后,再对每组相同的k1进行k2的排序。...但是这种排序方法要多一个对k1分组的时间,时间复杂度增大了)。 另外特别注意“在k1值相同的情况下,再看k2”这句话。...接着讨论要用的算法,题中没有给什么特殊的要求,所以我们要满足的只是“数据项k1,k1值小的元素在前,大的在后;在k1值相同的情况下,再看k2,k2值小的在前,大的在后”。...70 如上表所示,我们发现如果k1排序不稳定,那么对于相同的k1,可能k2不满足“在k1值相同的情况下,再看k2,k2值小的在前,大的在后”。

63610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Windows中的键盘快捷方式大全

    Down 从右到左在各个应用之间移动 Alt + Insert 按照应用启动的先后顺序循环切换应用 Alt + Home 显示“开始”屏幕 Ctrl + Alt + Break 在窗口和全屏之间切换 Ctrl...Ctrl + Alt + Break 在窗口和全屏之间切换 Ctrl + Alt + End 显示“Windows 安全”对话框 Alt + Delete 显示系统菜单。...注意:所有远程桌面会话中均提供 Ctrl+Alt+Break 和 Ctrl+Alt+End,即使在你将远程计算机设置为识别 Windows 键盘快捷方式时也是如此。...Ctrl + U 打开单位转换 Alt + C 计算或解决日期计算和工作表 F1 打开“计算器”帮助 Ctrl + Q 按下 M- 按钮 Ctrl + P 按下 M+ 按钮 Ctrl + M 按下 MS...R 按下 1/× 按钮 @ 按下平方根按钮 0–9 按下数字按钮 (0-9) = 按下 = 按钮 .

    9.2K21

    【Android 应用开发】AndroidUI设计 之 图片浏览器

    , 直到该图片完全显示在ImageView中, 缩放完成之后该图片在左上角; -- fitCenter : 方法中的常量值为 ImageView.ScaleType.FIT_CENTER, 保持长宽比缩放..., 直到该图片完全显示在ImageView中, 缩放完成之后该图片位于中央; -- fitEnd : 方法中的常量值为 ImageView.ScaleType.FIT_END, 保持长宽比缩放, 直到该图片完全显示在...计算每次自增自减的单位值 : 当按下缩放按钮的时候, 就对ImageView的宽高值进行自增自减单位值操作; 为ImageView设置宽高 : 即设置LayoutParams, 注意是LinearLayout.LayoutParams...: 两个9patch图片, 按下的时候按钮背景会改变  <?...; 按钮点击切换背景 : 设置selector资源, 设置两个item, 一个item的状态为按下时, 显示一个图片, 另一个item的状态为普通情况下, 显示另一个图片;  selector源码 :

    1.5K20

    第1期 | MultiButton,一个小巧简单易用的事件驱动型按键驱动模块

    MuliButton 支持如下的按钮事件: 事件 说明 PRESS_DOWN 按键按下,每次按下都触发 PRESS_UP 按键弹起,每次松开都触发 PRESS_REPEAT 重复按下触发,变量repeat...(KEY1_GPIO_Port, KEY1_Pin); } /* USER CODE END 0 */ 初始化按键对象的代码在main函数中,while(1)之前编写,如下: /* USER CODE...第一种适合于按键事件较少的情况: //按键1按下事件回调函数 void btn1_press_down_Handler(void* btn) { printf("---> key1 press down...实验现象 编译、下载之后,每次按下Key1时打印按下提示,松开Key1时打印松开提示: 2.5....扩展实验 在注册回调函数时将这按下和松开屏蔽,将单击和双击打开进行测试: //注册按钮事件回调函数 //button_attach(&button1, PRESS_DOWN, button_callback

    1.9K31

    UIButton实现各种图文结合的效果以及原理

    前面说的几个方法看起来有效,也确实会解决问题,但缺点是代码量会增加,而且必须同时管理UIButton, UIImageView, UILabel这三个整体,如果哪天产品还希望有一个按钮按下高亮或者按下阴影效果时...,他们都是一个UIEdgeInsets对象,默认的值都是0,也就是默认的值都是0的情况下按钮的图片和文字垂直居中,而且图片在左边文字在右边,而且图片文本整体水平居中。...,注意这里也算上他们之间的间隔值padding 我们可以通过更改按钮的titleEdgeInsets和imageEdgeInsets的值调整文本和图片的位置。...图片保持居中,而文字水平居中并且在图片的上面 这种方式要求图片在按钮居中,而文字则要求左右居中并且在垂直在图片的上面并保留出padding的间隔。...图片保持居中,而文字水平居中并且在图片的下面 这种方式要求图片在按钮居中,而文字则要求左右居中并且垂直在图片的下面并保留出padding的间隔。

    3.5K10

    【第3版emWin教程】第53章 emWin6.x的按钮Button控件

    按钮控件ID_BUTTON_0的点击消息WM_NOTIFICATION_CLICKED,如果用户需要按钮按下后执行某项功能,就可以在这个消息里面加入用户功能。...通过函数BUTTON_SetText设置按钮上显示的文本。 等待按钮被按下。 通过函数WM_DeleteWindow删除创建的按钮,因为按钮的本质也是窗口,所以用这个函数删除是没有问题的。...实验内容: 1、K1按键按下,串口或者RTT打印任务执行情况(串口波特率115200,数据位8,奇偶校验位无,停止位1)。...μCOS-III任务调试信息(按K1按键,串口打印): RTT 打印信息方式: 程序设计: 任务栈大小分配: μCOS-III任务栈大小在app_cfg.h文件中配置: #define APP_CFG_TASK_START_STK_SIZE...53.7 总结 本期教程主要是跟大家讲解了按钮控件的使用,希望初学者可以使用GUIBulider实际创建一个例子在模拟器和开发板上面都运行下。

    92930

    【数据结构与算法】:插入排序与希尔排序

    稳定性在某些情况下很重要,尤其是当排序的键值是复合的,即基于多个字段进行排序时。在这种情况下,保持相等元素的初始顺序可能对保持数据的某种有意义的顺序非常关键。...例如,在对一组人按出生日期排序时,如果有两个人出生日期相同,我们可能会希望他们在排序后保持按姓名的顺序,如果使用稳定的排序算法,就可以保证这一点。...这种情况下,数据通常存储在磁盘或其他外部存储设备上,排序过程中需要多次在内存和存储设备之间交换数据。...这就是tmp的正确位置,在这种情况下,我们执行break语句跳出循环,并将tmp放置在end + 1的位置 达到有序序列的起点:当循环保持进行,end值在每次迭代中不断递减,如果tmp小于所有已排序的元素...在实际应用中,希尔排序的性能通常介于O(N)和O(N2)之间,对于中等大小的数据集,它可以提供非常不错的速度,尤其是因为它比较简单易于实现,且对于较小的数据集,它一般比O(N log N)复杂度的算法更快

    00

    POJ 1176 Party Lamps&& USACO 2.2 派对灯(搜索)

    id=1176 题目描述 在IOI98的节日宴会上,我们有N(101到N被标上号码。...这些灯都连接到四个按钮: 按钮1:当按下此按钮,将改变所有的灯:本来亮着的灯就熄灭,本来是关着的灯被点亮。 按钮2:当按下此按钮,将改变所有奇数号的灯。 按钮3:当按下此按钮,将改变所有偶数号的灯。...按钮4:当按下此按钮,将改变所有序号是3*K+1(K>=0)的灯。例如:1,4,7… 一个计数器C记录按钮被按下的次数。当宴会开始,所有的灯都亮着,此时计数器C为0。...你将得到计数器C(0和经过若干操作后某些灯的状态。写一个程序去找出所有灯最后可能的与所给出信息相符的状态,并且没有重复。...=-1) { cin>>m; if(m==-1) break; m=(m-1)%6; kai.insert

    52220

    ACM之7-25日作业题解

    大楼的每一层楼都可以停电梯,而且第i层楼(1≤i≤N)上有一个数字K(0≤Ki≤N)。电梯只有四个按钮:开,关,上,下。上下的层数等于当前楼层上的那个数字。当然,如果不能满足要求,相应的按钮就会失灵。...例如:3, 3 ,1 ,2 ,5代表了Ki (K 1 =3,K 2 =3,…),从11楼开始。在1楼,按“上”可以到4楼,按“下”是不起作用的,因为没有-2楼。那么,从A楼到B楼至少要按几次按钮呢?...//到达每层最少的按键次数 vector flag;//标记值,表示每层是否被访问过,true代表访问过 int n; int start, end;//开始层和结束层...//记下到达每层最少的按键次数 if (next == end) //找到end层,退出while循环 { break;...)//找到end层,退出while循环 { break; } } q.pop();

    93710

    【第3版emWin教程】第51章 emWin6.x的Window窗口控件

    BUTTON_CreateIndirect, "Button", ID_BUTTON_0, 16, 87, 128, 37, 0, 0x0, 0 }, }; 上面的对话框资源列表里面依次创建了窗口控件,文本控件和按钮控件...51.3.3 第三步:在对话框上面建立按钮控件 为了使窗口控件内容不至于太少,我们在上面再添加一个按钮控件。文本控件的的建立方法和上面窗口控件的建立方法是一样的。...按钮上面的字体大小和显示内容,大家可以任意设置。...emWin功能的实现在MainTask.c文件里面 实验内容: 1、K1按键按下,串口或者RTT打印任务执行情况(串口波特率115200,数据位8,奇偶校验位无,停止位1)。...μCOS-III任务调试信息(按K1按键,串口打印): RTT 打印信息方式: 程序设计: 任务栈大小分配: μCOS-III任务栈大小在app_cfg.h文件中配置: #define APP_CFG_TASK_START_STK_SIZE

    1.1K20

    【IOS 开发】基本 UI 控件详解 (UISegmentedControl | UIImageView | UIProgressView | UISlider | UIAlertView )

    UISegmentedControl 控件属性 (1) Style 属性 Style 属性 :  -- Plain : 分段控件使用最普通的风格; -- Bordered : 在最普通风格上添加一圈边框...default: break; } } @end -- 界面展示 :  3....纵横缩放比, 图片完全自适应 UIImageView 控件; -- Aspect Fit : 保持纵横比缩放, 保证图片长边完全显示出来, 完整显示图片; -- Aspect Fill : 保持纵横比缩放..." delegate:self cancelButtonTitle:@"取消显示" otherButtonTitles:@"按钮1", @"按钮2", @"按钮3", @"按钮4", nil];...UIActionSheet 简介 (1) UIActionSheet 作用 UIActionSheet 作用 : 该控件是显示在界面底部的按钮列表, 该控件 有 一个标题 和 多个按钮; (2) UIActionSheet

    4.6K40

    【第3版emWin教程】第11章 GUIBuilder6.X的使用方法

    11.2.2 第二步:在对话框上面建立按钮 按钮的建立方法和上面的对话框是一样的。按钮上面的字体大小和显示内容,大家可以任意设置。...按钮上的文本不支持对齐方式设置,默认是居中显示,这里是显示字符armfly,字体GUI_FONT_24B_ASCII,建立后的效果如下所示: 对于建立的按钮控件,用户可以任意拖动,并通过鼠标调整其大小,...使用方法在第9和第10章有详细说明。...实验内容: 1、K1按键按下,串口或者RTT打印任务执行情况(串口波特率115200,数据位8,奇偶校验位无,停止位1)。...μCOS-III任务调试信息(按K1按键,串口打印): RTT 打印信息方式: 程序设计: 任务栈大小分配: μCOS-III任务栈大小在app_cfg.h文件中配置: #define APP_CFG_TASK_START_STK_SIZE

    79120

    win10快捷键大全 win10常用快捷键

    Alt+Insert 按照程序启动的顺序循环切换程序 Alt+Home 显示“开始”菜单 Ctrl+Alt+Break 在窗口和全屏之间切换 Ctrl+Alt+End 显示“Win安全”对话框 Alt...按下 +/– 按钮 / 按下 / 按钮 * 按下 * 按钮 + 按下 + 按钮 - 按下 – 按钮 R 按下 1/× 按钮 @ 按下平方根按钮 0-9 按下数字按钮 (0-9) = 按下 = 按钮 ....tanh 按钮 ( 在科学型模式下按 ( 按钮 ) 在科学型模式下按 ) 按钮 N 在科学型模式下按 ln 按钮 ; 在科学型模式下按 Int 按钮 S 在科学型模式下按 sin 按钮 O 在科学型模式下按...cos 按钮 T 在科学型模式下按 tan 按钮 M 在科学型模式下按 dms 按钮 P 在科学型模式下按 pi 按钮 V 在科学型模式下按 F-E 按钮 X 在科学型模式下按 Exp 按钮 Q 在科学型模式下按...( 按钮 ) 在程序员模式下按 ) 按钮 | 在程序员模式下按 Or 按钮 ^ 在程序员模式下按 Xor 按钮 ~ 在程序员模式下按 Not 按钮 & 在程序员模式下按 And 按钮 A-F 在程序员模式下按

    6.4K70

    【第3版emWin教程】第52章 emWin6.x的FrameWin框架窗口控件

    52.3.2 第二步:在对话框上面建立按钮控件 仅显示一个框架窗口控件的话,内容太少了,我们在上面添加一个按钮控件。按钮的建立方法和上面的对话框是一样的。...按钮上面的字体大小和显示内容,大家可以任意设置。...实验内容: 1、K1按键按下,串口或者RTT打印任务执行情况(串口波特率115200,数据位8,奇偶校验位无,停止位1)。...μCOS-III任务调试信息(按K1按键,串口打印): RTT 打印信息方式: 程序设计: 任务栈大小分配: μCOS-III任务栈大小在app_cfg.h文件中配置: #define APP_CFG_TASK_START_STK_SIZE...52.7 总结 本期教程主要是跟大家讲解了框架窗口控件的使用,希望初学者可以使用GUIBulider实际创建一个例子在模拟器和开发板上面都运行下。

    87810

    【第3版emWin教程】第55章 emWin6.x按钮Button控件自定义回调函数,实现各种按钮效果

    这个问题解释清楚了,剩下就是WM_PAINT消息里面实现的功能了,这个消息里面实现了按钮按下和未按下两种状态的显示效果,通过函数BUTTON_IsPressed来区分这两种状态,返回1就是按下了,返回0.../* 按下状态,按下后,我们通过函数GUI_SetAlpha设置图片显示出来的透明效果, 这样就将按下和未按下两种状态区分开了。...", &Rect, GUI_TA_HCENTER | GUI_TA_VCENTER); 通过上面的代码就实现了按钮未按下和按下时两种不同的按钮颜色。...1 : 0返回当前按钮是按下还是未按下,按下的话,返回数值1,未按下返回数值0。根据这个返回值,在WM_PIANT消息里面绘制按钮按下和未按下两种状态的显示效果。..._Pressed,赋值为1表示按下,赋值为0表示未按下。

    1.4K20

    【数据结构】排序基石:透彻掌握概念,手撕插入排序与希尔排序(附代码)

    稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次 序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在...* a,int n ) { int end; int tmp = a[end + 1];//先把end+1放入tmp //[0,end]有序 end+1位置插入进去,保持有序 while (end...后边 也就是现在的[end+1]的位置 //极端情况下end=-1时跳出循环,此时表达式依然成立a[0]=tmp } 也可以理解为 在给tmp找个合适的地方 在这个合适的地方的后边几项要整体往后挪一个...; int tmp = a[end + 1]; //[0,end]有序 end+1位置插入进去,保持有序 while (end >= 0) { if (a[end] > tmp)...(已经越界了),所以再从第二个数开始下一轮 我们很容易发现gap为几,就分成几个组 还是以gap为5为例 9和4为第一组 1和8为第二组 2和6为第三组 5和3为第四组 7和5为第五组 //还是先看一趟

    24510

    win8快捷键大全分享,非常全

    Alt+Insert 按照程序启动的顺序循环切换程序 Alt+Home 显示「开始」菜单 Ctrl+Alt+Break 在窗口和全屏之间切换 Ctrl+Alt+End 显示“Windows 安全”对话框...按下 +/– 按钮 / 按下 / 按钮 * 按下 * 按钮 + 按下 + 按钮 - 按下 – 按钮 R 按下 1/× 按钮 @ 按下平方根按钮 0-9 按下数字按钮 (0-9) = 按下 = 按钮 ....tanh 按钮 ( 在科学型模式下按 ( 按钮 ) 在科学型模式下按 ) 按钮 N 在科学型模式下按 ln 按钮 ; 在科学型模式下按 Int 按钮 S 在科学型模式下按 sin 按钮 O 在科学型模式下按...将选择内容复制到剪贴板 Ctrl+V 从剪贴板粘贴选择内容 Esc 取消某个选择 删除 删除某个选择 Ctrl+F 开始基本查找 Ctrl+G 转到页面 F5 刷新查找结果 F5 刷新便笺列表 F6 在便笺列表和便笺之间切换...End 移动到主题的末尾 Ctrl+F 搜索当前主题 Ctrl+P 打印主题 F3 将光标移动到搜索框 轻松访问快捷键 按住右 Shift 八秒钟 启用和关闭筛选键 按左 Alt+左 Shift+PrtScn

    5.3K40
    领券