首页 > 其他分享 >12.18随笔

12.18随笔

时间:2024-12-18 19:31:50浏览次数:3  
标签:int Qsort elem high low SqList 随笔 12.18

这里是12.18随笔
题目留档:
6-4 快速排序
分数 10
作者 DS课程组
单位 临沂大学
本题要求实现快速排序的一趟划分函数,待排序列的长度1<=n<=1000。

函数接口定义:
int Partition ( SqList L, int low, int high );
其中L是待排序表,使排序后的数据从小到大排列。

类型定义:

typedef int KeyType;
typedef struct
{
KeyType elem; /elem[0]一般作哨兵或缓冲区*/
int Length;
}SqList;
裁判测试程序样例:

include<stdio.h>

include<stdlib.h>

typedef int KeyType;
typedef struct
{
KeyType elem; /elem[0]一般作哨兵或缓冲区/
int Length;
}SqList;
void CreatSqList(SqList L);/待排序列建立,由裁判实现,细节不表
/
int Partition ( SqList L,int low, int high );
void Qsort ( SqList L,int low, int high );
int main()
{
SqList L;
int i;
CreatSqList(&L);
Qsort(L,1,L.Length);
for(i=1;i<=L.Length;i++)
printf("%d ",L.elem[i]);
return 0;
}
void Qsort ( SqList L,int low, int high )
{
int pivotloc;
if(low<high)
{
pivotloc = Partition(L, low, high ) ;
Qsort (L, low, pivotloc-1) ;
Qsort (L, pivotloc+1, high );
}
}
/*你的代码将被嵌在这里 */
输入样例:
第一行整数表示参与排序的关键字个数。第二行是关键字值 例如:

10
5 2 4 1 8 9 10 12 3 6
输出样例:
输出由小到大的有序序列,每一个关键字之间由空格隔开,最后一个关键字后有一个空格。

1 2 3 4 5 6 8 9 10 12
代码留档:
int Partition(SqList L,int low,int high){
KeyType pivotkey=L.elem[low];
while (low<high){
while(low<high&&L.elem[high]>=pivotkey)
high--;
L.elem[low]=L.elem[high];
while(low<high&&L.elem[low]<=pivotkey)
low++;
L.elem[high]=L.elem[low];
}
L.elem[low]=pivotkey;
return low;
}

标签:int,Qsort,elem,high,low,SqList,随笔,12.18
From: https://www.cnblogs.com/Thanatos-syst/p/18615730

相关文章

  • 12.18
    JavaWeb前端常用的代码复用总结servlet声明定义message信息传给前天界面判断输出message;if(booknamelist.size()==0){message="根据书名查询没有结果!";}<%Stringmessage=(String)request.getAttribute("message");if(message!=null){%><%}%>查......
  • 12.18
    实验5MapReduce初级编程实践 1.实验目的(1)通过实验掌握基本的MapReduce编程方法;(2)掌握用MapReduce解决一些常见的数据处理问题,包括数据去重、数据排序和数据挖掘等。2.实验平台(1)操作系统:Linux(建议Ubuntu16.04或Ubuntu18.04)(2)Hadoop版本:3.1.33.实验步骤(一)编程实现文件合并......
  • 12.18
    任何运行于现代操作系统中的程序都会与同时运行的其他程序、检查磁盘或者新的 Java 和Flash 版本的定期维护进程以及控制网络接口、磁盘、声音设备、加速器、温度计和其他外设的操作系统的各个部分共享计算机。每个程序都会与其他程序竞争计算机资源。程序不会过多在意这些事......
  • 12.17随笔
    这里是12.17随笔UML图绘制--类图:https://blog.csdn.net/Qhx20040819/article/details/132268512?ops_request_misc=%257B%2522request%255Fid%2522%253A%252238d718ecb9472f600fa9689ab6e986fb%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=38d......
  • 12.16随笔
    这里是12.16随笔代码留档:packagecome;importjavax.servlet.ServletException;importjavax.servlet.annotation.WebServlet;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;import......
  • MVCC多版本并发控制机制学习随笔
    MVCC多版本并发控制机制Mysql在可重复读隔离级别下如何保证事务较高的隔离性,同样的sql查询语句在一个事务里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。这个隔离性就是靠MVCC(Multi-VersionConcurrencyControl)机制来保证的。对一行......
  • MySQL锁机制学习随笔
    MySQL锁机制学习随笔锁机制是什么?锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据......
  • opencv编译随笔
    编译目标本文将记录在Linux下编译Opencv及其扩展contrib,并记录在这过程中发生的问题。环境需求操作系统:Ubuntu20.04CMake:3.22.1及以上Make:4.2.1gcc/g++:9.4.0联网需求:是准备拉取OpenCV和opencv_contrib代码,得到两个代码文件夹opencv和opencv_contribhttps:/......
  • 12.12随笔
    这里是12.12随笔。题目留档:7-1整型关键字的散列映射分数30作者DS课程组单位浙江大学给定一系列整型关键字和素数p,用除留余数法定义的散列函数H(key)=key%p将关键字映射到长度为p的散列表中。用线性探测法解决冲突。输入格式:输入第一行首先给出两个正整数n(≤1000......
  • 【java】 随笔 charAt,Random,ArrayList
    1.charAtcharch=str.charAt(i)  根据索引来获取字符串中的字符到ch中2.Random       Random类用来生成随机数字    (1)导包        importjava.util.Random;    (2)创建         Randomr=newRand......