数据结构_练习 第8章 排序

2023-05-16

1.选择题

1从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的方法,这种排序方法称为   

A.归并排序       B.冒泡排序        C.插入排序        D.选择排序 

答案:C

2从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为   

A.归并排序       B.冒泡排序        C.插入排序        D.选择排序 

答案:D

3n个不同的关键字由小到大进行冒泡排序,在下列   情况下比较的次数最多。

A.从小到大排列好的                 B.从大到小排列好的    

 C.元素无序                          D.元素基本有序

答案:B

解释:对关键字进行冒泡排序,关键字逆序时比较次数最多。

4n个不同的排序码进行冒泡排序,在元素无序的情况下比较的次数最多为   

An+1            Bn               Cn-1             Dn(n-1)/2

答案:D

解释:比较次数最多时,第一次比较n-1次,第二次比较n-2次……最后一次比较1次,即(n-1)+(n-2)++1= n(n-1)/2

5快速排序在下列   情况下最易发挥其长处。

A.被排序的数据中含有多个相同排序码   

B.被排序的数据已基本有序   

C.被排序的数据完全无序         

D.被排序的数据中的最大值和最小值相差悬殊

答案:C

解释:B选项是快速排序的最坏情况。

6n个关键字作快速排序,在最坏情况下,算法的时间复杂度是   

AO(n)           BO(n2)           CO(nlog2n)         DO(n3) 

答案:B

解释:快速排序的平均时间复杂度为O(nlog2n),但在最坏情况下,即关键字基本排好序的情况下,时间复杂度为O(n2)

7若一组记录的排序码为(46, 7956384084),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为   

A384046567984              B403846795684

C403846567984               D403846845679

答案:C

8下列关键字序列中,   是堆。

A167231239453               B942331721653 

C165323943172               D162353319472

答案:D

解释:D选项为小根堆

9堆是一种   排序。

A.插入         B.选择         C.交换         D.归并

答案:B

10堆的形状是一棵   

A.二叉排序树   B.满二叉树     C.完全二叉树    D.平衡二叉树

答案:C

11若一组记录的排序码为(467956384084),则利用堆排序的方法建立的初始堆为   

A794656384084               B847956384046         

C847956464038              D845679404638

答案:B

12下述几种排序方法中,要求内存最大的是   

A.希尔排序        B.快速排序        C.归并排序       D.堆排序

答案:C

解释:堆排序、希尔排序的空间复杂度为O(1),快速排序的空间复杂度为O(log2n),归并排序的空间复杂度为O(n)

13下述几种排序方法中,   是稳定的排序方法。

A.希尔排序        B.快速排序        C.归并排序       D.堆排序

答案:C

解释:不稳定排序有希尔排序、简单选择排序、快速排序、堆排序;稳定排序有直接插入排序、折半插入排序、冒泡排序、归并排序、基数排序。

14数据表中有10000个元素,如果仅要求求出其中最大的10个元素,则采用(    )算法最节省时间。

A.冒泡排序        B.快速排序        C.简单选择排序   D.堆排序

答案:D

15下列排序算法中,   不能保证每趟排序至少能将一个元素放到其最终的位置上。

A.希尔排序        B.快速排序        C.冒泡排序       D.堆排序

答案:A

解释:快速排序的每趟排序能将作为枢轴的元素放到最终位置;冒泡排序的每趟排序能将最大或最小的元素放到最终位置;堆排序的每趟排序能将最大或最小的元素放到最终位置。

2.应用

1设待排序的关键字序列为{1221630281016*20618},试分别写出使用以下排序方法,每趟排序结束后关键字序列的状态。

 直接插入排序

② 折半插入排序

 希尔排序(增量选取531

 冒泡排序

 快速排序

 简单选择排序

 堆排序

 二路归并排序

答案:

直接插入排序

[2    12]   16   30   28   10   16*   20   6    18         

[2    12    16]  30   28   10   16*   20   6    18         

[2    12    16   30]  28   10   16*   20   6    18         

[2    12    16   28   30]  10   16*   20   6    18         

[2    10    12   16   28  30]   16*   20   6    18         

[2    10    12   16   16*  28   30]   20   6    18         

[2    10    12   16   16*  20   28   30]   6    18         

[2    6     10   12   16  16*   20   28   30]   18         

[2    6     10   12   16  16*    18   20   28   30]

 

② 折半插入排序 排序过程同

 

 希尔排序(增量选取531

10   2    16   6    18   12   16*   20  30    28 (增量选取5

6    2    12   10   18   16   16*   20  30    28 (增量选取3

2    6    10   12   16   16*  18      20  28    30 (增量选取1

 

 冒泡排序

2    12   16    28   10   16*  20   6     18   [30]        

2    12   16    10   16*  20   6    18    [28   30]        

2    12   10    16   16*  6     18   [20   28   30]          

2    10   12    16   6   16*    [18   20   28   30]          

2    10   12    6   16   [16*    18   20   28   30]         

2    10   6    12   [16   16*    18   20   28   30]        

2    6   10    [12   16   16*    18   20   28   30]

2    6   10    12   16   16*    18   20   28   30]       

 

 快速排序

12  [6    2  10]  12  [28  30  16*  20   16  18]          

6   [2]  6  [10] 12 [28  30  16*  20   16  18 ]         

28  2    6   10   12 [18  16  16*  20 ]28  [30 ]       

18  2   6   10  12   [16*  16] 18 [20]  28  30          

16*     2   6   10  12   16* [16]   18  20   28  30

左子序列递归深度为1,右子序列递归深度为3

 

 简单选择排序

2    [12   16   30   28   10   16*   20   6    18]          

2    6    [16   30   28   10   16*   20   12   18]          

2    6    10   [30   28   16   16*   20   12   18]          

2    6    10   12   [28   16   16*   20   30   18]          

2    6    10   12   16   [28   16*   20   30   18]          

2    6    10   12   16   16*    [28  20   30   18]          

2    6    10   12   16   16*   18   [20   30   28]         

2    6    10   12   16   16*   18    20   [28  30]         

2    6    10   12   16   16*    18   20   28   [30]

 

 

 二路归并排序

2 12    16 30    10 28    16 * 20    6 18                                                

2 12 16 30        10 16* 20 28      6 18                                               

2 10 12 16 16* 20 28 30   6 18                                               

2 6 10 12 16 16* 18 20 28 30

 

2给出如下关键字序列{3211565746287331333463},试按链式基数排序方法,列出每一趟分配和收集的过程。

答案:

最低位优先  3211565746287331333463

      分配 [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]

               321     33   34     156  57  28

               331     63           46   7

收集  3213313363341564657728

3)对输入文件(101511961371311719100552093050690);当k=6时,使用置换-选择算法,写出建立的初始败者树及生成的初始归并段。

答案:

       

初始归并段:R1:3,19,31,51,61,71,100,101

            R2:9,17,19,20,30,50,55,90

  R3:6

 

3.算法设计

1)试以单链表为存储结构,实现简单选择排序算法。

 [算法描述]

voidLinkedListSelectSort(LinkedList head)

//本算法一趟找出一个关键字最小的结点,其数据和当前结点进行交换;若要交换指针,则须记下

//当前结点和最小结点的前驱指针

p=head->next;

while(p!=null)

    {q=p->next;  r=p;    //设r是指向关键字最小的结点的指针

     while (q!=null)

      {if(q->data<r->data) r=q;

 q:=q->next;

}

     if(r!=p)  r->data<-->p->data;

     p=p->next;

    }

 

2)有n个记录存储在带头结点的双向链表中,现用双向冒泡排序法对其按上升序进行排序,请写出这种排序的算法。(注:双向冒泡排序即相邻两趟排序向相反方向冒泡)。   

[算法描述]

typedef struct node

       { ElemType data;

         struct node *prior,*next;

       }node*DLinkedList;

void  TwoWayBubbleSort(DLinkedList la)

//存储在带头结点的双向链表la中的元素进行双向起泡排序。

{intexchange=1;  //设标记 

 DLinkedList p,temp,tail;

 head=la         //双向链表头,算法过程中是向下起泡的开始结点

 tail=null;      //双向链表尾,算法过程中是向上起泡的开始结点

while (exchange)

{p=head->next;    //p是工作指针,指向当前结点

exchange=0;      //假定本趟无交换 

while (p->next!=tail)  // 向下(右)起泡,一趟有一最大元素沉底

  if (p->data>p->next->data) //交换两结点指针,涉及6条链

{temp=p->next; exchange=1;//有交换

p->next=temp->next;temp->next->prior=p //先将结点从链表上摘下

temp->next=p; p->prior->next=temp;     //temp插到p结点前

temp->prior=p->prior; p->prior=temp;

}

          else p=p->next; //无交换,指针后移

          tail=p; //准备向上起泡

          p=tail->prior;

while (exchange && p->prior!=head)  

//向上(左)起泡,一趟有一最小元素冒出

     if (p->data<p->prior->data)       //交换两结点指针,涉及6条链

{temp=p->prior; exchange=1;     //有交换

p->prior=temp->prior;temp->prior->next=p 

//先将temp结点从链表上摘下

temp->prior=p; p->next->prior=temp; //temp插到p结点后(右)

temp->next=p->next; p->next=temp;

}

            else p=p->prior;  //无交换,指针前移

          head=p;             //准备向下起泡

 }//while (exchange)

} //算法结束 

 

3)设有顺序放置的n个桶,每个桶中装有一粒砾石,每粒砾石的颜色是红蓝之一。要求重新安排这些砾石,使得所有红色砾石在前,所有白色砾石居中,所有蓝色砾石居后,重新安排时对每粒砾石的颜色只能看一次,并且只允许交换操作来调整砾石的位置。

[题目分析]利用快速排序思想解决。由于要求“对每粒砾石的颜色只能看一次”,设3个指针ijk,分别指向红色、白色砾石的后一位置和待处理的当前元素。从k=n开始,从右向左搜索,若该元素是兰色,则元素不动,指针左移(即k-1);若当前元素是红色砾石,分i>=j(这时尚没有白色砾石)和i<j两种情况。前一情况执行第i个元素和第k个元素交换,之后i+1;后一情况,i所指的元素已处理过(白色),j所指的元素尚未处理,应先将ij所指元素交换,再将ik所指元素交换。对当前元素是白色砾石的情况,也可类似处理。

为方便处理,将三种砾石的颜色用整数123表示。

[算法描述]

void QkSort(rectype r[],int n) {

// r为含有n个元素的线性表,元素是具有红、白和兰色的砾石,用顺序存储结构存储,

//本算法对其排序,使所有红色砾石在前,白色居中,兰色在最后。

int i=1,j=1,k=n,temp;

while (k!=j){

while (r[k].key==3) k--;//当前元素是兰色砾石,指针左移 

if (r[k].key==1)        //当前元素是红色砾石

      if (i>=j){temp=r[k];r[k]=r[i];r[i]=temp; i++;}

//左侧只有红色砾石,交换r[k]r[i]

      else     {temp=r[j];r[j]=r[i];r[i]=temp; j++;  

  //左侧已有红色和白色砾石,先交换白色砾石到位 

temp=r[k];r[k]=r[i];r[i]=temp; i++;

//白色砾石(i所指)和待定砾石(j所指)

}   //再交换r[k]r[i],使红色砾石入位。

if (r[k].key==2)

      if (i<=j) { temp=r[k];r[k]=r[j];r[j]=temp; j++;}

//左侧已有白色砾石,交换r[k]r[j]

      else      { temp=r[k];r[k]=r[i];r[i]=temp; j=i+1;}

//ij分别指向红、白色砾石的后一位置

  }//while

 if (r[k]==2) j++;   /*处理最后一粒砾石

 else if (r[k]==1) { temp=r[j];r[j]=r[i];r[i]=temp; i++; j++; }

 //最后红、白、兰色砾石的个数分别为: i-1;j-i;n-j+1

}//结束QkSor算法

[算法讨论]若将j(上面指向白色)看作工作指针,将r[1..j-1]作为红色,r[j..k-1]为白色,r[k..n]为兰色。从j=1开始查看,若r[j]为白色,则j=j+1;若r[j]为红色,则交换r[j]r[i],且j=j+1i=i+1;若r[j]为兰色,则交换r[j]r[k];k=k-1。算法进行到j>k为止。

算法片段如下:

inti=1,j=1,k=n;

while(j<=k)

  if (r[j]==1)  //当前元素是红色

     {temp=r[i]; r[i]=r[j]; r[j]=temp; i++;j++; }

  else if (r[j]==2) j++;  //当前元素是白色

else               //(r[j]==3  当前元素是兰色

         {temp=r[j]; r[j]=r[k]; r[k]=temp; k--; }

对比两种算法,可以看出,正确选择变量(指针)的重要性。

 

4)编写算法,对n个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求:

 采用顺序存储结构,至多使用一个记录的辅助存储空间;

② 算法的时间复杂度为O(n)

 [算法描述]

void  process (int A[n]){

low = 0;

high = n-1;

while ( low<high ){

while (low<high && A[low]<0)

low++;

while (low<high && A[high]>0)

high++;

if (low<high){   

x=A[low];

A[low]=A[high];

A[high]=x;

low++;

high--;

}

}

  return;

}

 

5)借助于快速排序的算法思想,在一组无序的记录中查找给定关键字值等于key的记录。设此组记录存放于数组r[l..n]中。若查找成功,则输出该记录在r数组中的位置及其值,否则显示not find”信息。请简要说明算法思想并编写算法。

[题目分析]把待查记录看作枢轴,先由后向前依次比较,若小于枢轴,则从前向后,直到查找成功返回其位置或失败返回0为止。

[算法描述]

int index (RecType R[],int l,h,datatype key)

{int i=l,j=h;

     while (i<j)

        { while (i<=j && R[j].key>key) j--;

          if (R[j].key==key) return  j;

          while (i<=j && R[i].key<key) i++;

          if (R[i].key==key) return  i;

         }

        cout<<“Not find”; return  0;

     }//index

 

6)有一种简单的排序算法,叫做计数排序。这种排序算法对一个待排序的表进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不相同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表中有多少个记录的关键字比该记录的关键字小。假设针对某一个记录,统计出的计数值为c,那么,这个记录在新的有序表中的合适的存放位置即为c

  给出适用于计数排序的顺序表定义;

 ② 编写实现计数排序的算法;

  对于有n个记录的表,关键字比较次数是多少?

  与简单选择排序相比较,这种方法是否更好?为什么?

[算法描述]

 typedef struct

{int key;

datatype info

}RecType

void CountSort(RecType a[],b[],int n) 

//计数排序算法,将a中记录排序放入b

{for(i=0;i<n;i++)//对每一个元素

{for(j=0,cnt=0;j<n;j++)

if(a[j].key<a[i].key) cnt++;//统计关键字比它小的元素个数

b[cnt]=a[i];

}

}//Count_Sort

 对于有n个记录的表,关键码比较n2次。

 简单选择排序算法比本算法好。简单选择排序比较次数是n(n-1)/2,且只用一个交换记录的空间;而这种方法比较次数是n2,且需要另一数组空间。

[算法讨论]因题目要求“针对表中的每个记录,扫描待排序的表一趟”,所以比较次数是n2次。若限制“对任意两个记录之间应该只进行一次比较”,则可把以上算法中的比较语句改为:

for(i=0;i<n;i++) a[i].count=0;//各元素再增加一个计数域,初始化为0

for(i=0;i<n;i++)

   for(j=i+1;j<n;j++)

 if(a[i].key<a[j].key) a[j].count++; else a[i].count++;

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据结构_练习 第8章 排序 的相关文章

  • python3调用7-zip解密解压压缩包(hmac加密)

    文章目录 一 调用7z exe二 获取压缩包路径及其名字三 按照hmac加密方式进行解密四 设置将解压出的文件放入的目录五 最后将各变量整合到一起 xff0c 组成解压缩命令 xff0c 传到popen xff08 xff09 函数内六 完
  • Ubuntu相对路径和绝对路径

    ubuntu绝对路径 xff1a 例如在目录 home lzj temp下有一个文件filename txt那么filename txt文件的绝对路径就是 home lzj temp ubuntu相对路径 xff1a 如果你当前路径是在 h
  • ubuntu把终端信息输出到文本文件中的方法

    ubuntu把终端信息输出到文本文件中的方法 方法一 xff1a 把终端中所有信息都写到文本文件中 在终端的命令行中输入以下命令 xff1a script f output txt 这样就会在当前目录下创建一个output txt文件 接下
  • ubuntu配置有线网络笔记

    ubuntu配置有线网络笔记 1 用命令ifconfig查看网络信息 eth0 xff0c eth1 xff0c eth2 代表网卡一 xff0c 网卡二 xff0c 网卡三 lo代表127 0 0 1 xff0c 即localhost 2
  • syntax error: unexpected end of file解决方法

    syntax error unexpected end of file解决方法 在windows环境下编辑的脚本通过Xftp上传到linux系统执行的时候会提示syntax error unexpected end of file xff0
  • excel2010取消保护忘记密码宏的方式-针对公务员职位表保护

    excel2010 视图 宏 新建 取消新建 编辑 替换以下内容 Option Explicit Public Sub AllInternalPasswords 39 Breaks worksheet and workbook struct
  • CS5汉化步骤

    CS5汉化步骤 第一步 xff1a 关闭PS xff0c 下载汉化补丁 xff08 zh CN xff09 xff0c 将汉化补丁复制到安装目录下的 Locales 文件夹中 xff0c 通常为 C Program Files Adobe
  • 用eclipse建一个web页面(图文)

    步骤1 xff1a 创建Dynamic Web Project 动态web项目 打开eclipse xff0c 在工具栏选在New gt Dynamic Web Project 在打开的Dynamic Web Project窗口 xff0c
  • pip下载源的两种修改方法

    很多入行网工不久的萌新 xff0c 在使用python进行NetDevOps的过程中 xff0c 需要经常使用python的包管理器pypi下载第三方库 比如paramiko netmiko netaddr等等 但是 xff0c 默认源的下
  • 2、树莓派3 Model B ——— 使用GIT工具安装wiringPi

    1 WiringPi简介 WiringPi是应用于树莓派平台的GPIO控制库函数 xff0c WiringPi遵守GUN Lv3 wiringPi使用C或者C 43 43 开发并且可以被其他语言包转 xff0c 例如python ruby或
  • C语言之文件操作05——矩阵(数据)的读取方法

    数据读取 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 6
  • String和Stringbuff和Stringbuilder区别

    string类型属于引用类型 xff0c 不属于八个基本变量 每次指定一个String a 61 34 a 34 时 xff0c jvm会在内存中新建一个对象 xff0c 当你再给a赋值的时候 xff0c jvm并没有改变a引用的值 xff
  • docker build 后面为什么要跟个 .

    我们在构建镜像文件时无非是使用 xff1a docker build t test ubuntu v1 或者 docker build f docker test Dockerfile 来进行构建镜像 xff0c 用第一个命令时任务 指代的
  • 洛谷P4180 严格次小生成树

    题目描述 小 C 最近学了很多最小生成树的算法 xff0c Prim 算法 Kruskal 算法 消圈算法等等 正当小 C 洋洋得意之时 xff0c 小 P 又来泼小 C 冷水了 小 P 说 xff0c 让小 C 求出一个无向图的次小生成树
  • 【搜索与回溯算法】马的走法

    题目 xff1a 在5X5的棋盘上 xff0c 给定一位置 xff0c 输出马回到原点有多少种不同的方案 注意 xff1a 马走的每一步必须在棋盘上 xff0c 走斜日 xff0c 如下图 xff1a 输入 xff1a 给定一位置 xff0
  • 如何使用mysql api关闭ssl模式提高查询效率

    昨天测试部同事用大呼测试我们的业务系统 xff0c 数据库用的是MySQL 单呼的时候数据库查询正常 xff0c 但是呼叫量一大就出现了数据库查询延迟的情况 经过分析发现是由于MySQL Server的数据库端开启了SSL xff0c 每次
  • iOS开发之多线程--多线程简单介绍

    一 进程和线程 1 什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的 xff0c 每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ Xcode xff0c 系统就会分别启动2 个进程 通过 活动监视器 可
  • UIImageView的基本用法

    UIViewContentModeScaleTo Fill UIViewContentModeScaleAs pectFit contents scaled to fit with fixed aspect remainder is tra
  • compton透明设置

    compton是一个使你窗口透明化的工具 xff0c 如果你当前使用的软件支持窗口透明的功能 xff0c 那么compton可以帮你设置透明度 xff0c 阴影效果 xff0c 窗口切换效果等 对于我来说就用一个透明度设置的功能就可以了 想
  • ubuntu系统配置i3wm窗口管理器

    我的简书 xff1a https www jianshu com p 81917864271e ubuntu系统配置i3wm窗口管理器 文章目录 ubuntu系统配置i3wm窗口管理器前言i3wm的安装i3wm的配置i3wm快捷键配置介绍i

随机推荐

  • windows 10卸载(注销)WSL,注销(卸载)当前安装的Linux的Windows子系统

    虽然 Linux 发行版可以通过 Microsoft Store 安装 xff0c 但不能通过 Microsoft Store 卸载 不想玩了 xff0c 或者玩腻了就考虑去卸载 xff0c 给电脑节省点空间 1 查看当前环境安装的wsl
  • 获取Chrome浏览器的Cookie

    1 通过查看http请求里header信息 xff0c 查看cookie 2 通过查看浏览器 Chrome 的cookie文件 2 1 进入浏览器设置 2 2 点击隐私设置 gt 内容设置 3 通过查看本地cookies文件 osx上 xf
  • PLSQL 登录时弹出(没有登录)空白提示框

    在登录的时候莫名出现了plsql登录时弹出 没有登录 的空白提示框 在网上找了很多方法之后都不行 然后发现plsql的 oracle主目录名莫名的成了空 然后直接重新把它的目录设置上 重启plsql 就能成功登录了 进入PLSQL gt 工
  • STM32之按键点亮LED灯(中断法)

    目录 1 操作思路 2 用CubeMX工具生成的代码 main的主函数 3 GPIO代码 gpio c 4 编写中断服务函数 5 用外部中断共用入口函数 xff0c 来调用外部中断处理回调函数 6 编写外部中断处理回调函数 xff08 在这
  • 进程间通信之——信号量(一)(system V)

    system v信号量又被称为system v信号量集 它的本质就是一个计数器 xff0c 用来为多个进程共享的数据结构提供受控访问 信号量支持的操作有 xff1a 使用最广泛的信号量为二元信号量 xff0c 它控制单个资源 xff0c 对
  • wsl 删除Linux子系统

    步骤 xff1a PS C Users twomiao gt wslconfig l 适用于 Linux 的 Windows 子系统 Ubuntu 20 04 默认 PS C Users twomiao gt wslconfig u Ubu
  • Python常用语句

    1 print和import语句 print xff1a 打印表达式 xff0c 多个表达式之间可以通过逗号 xff08 英文 xff09 进行分隔 gt gt gt print 39 Hello 39 39 World 39 Hello
  • video-to-ascii:在命令行中看视频

    最近GitHub上有个很好玩的项目 xff0c 叫做video to ascii 这是一个简单的python包 xff0c 可以使用字符作为像素在终端中播放视频 安装 xff1a code pip3 install video to asc
  • python3小白实现pipinstall打包全过程(详细)

    本博文源于python基础 xff0c 在实现将py打包成exe全过程中 xff0c 首先要感谢我的朋友圈列表的大佬 然后我们开始叙述打包的过程 共分为以下几步 确定好打包的文件安装pyinstaller在cmd里输入命令完成过程 xff0
  • django-debug-toolbar 的安装及安装中可能遇到的问题

    简介 django debug toolbar 是一个非常方便的工具 xff0c 可以深入了解代码的工作以及它花费的时间 xff0c 特别是它可以显示你的页面生成的所有SQL查询 xff0c 以及每个sql所需要的时间 django deb
  • VS2017动态链接库(.dll)的生成与使用

    这里以VS2017为例子 xff0c 讲解一下动态链接库 xff08 dll xff09 的生成与使用 一 动态链接库 xff08 dll xff09 的生成 1 打开 xff1a 文件 新建 项目 2 打开 xff1a 已安装 模板 Vi
  • 17年软件设计师知识点分析+思维导图

    原文连接 xff1a 最新 17年 软件设计师知识点分析 xff08 思维导图 xff09 历年试题分析 分析完下方有17面软考脑图 xff1a 分析下方的脑图才本文经典部分 xff01 xff01 xff01 历年下午试题分析 xff1a
  • 百练_2680:化验诊断

    描述 下表是进行血常规检验的正常值参考范围 xff0c 及化验值异常的临床意义 xff1a 给定一张化验单 xff0c 判断其所有指标是否正常 xff0c 如果不正常 xff0c 统计有几项不正常 化验单上的值必须严格落在正常参考值范围内
  • encodeURIComponent()的使用

    在使用springMVC的过程中 若想让前台传递的字符串让后台用Date类型自动解析可以通过initBinder函数来实现 之前我用表单提交方式向后台传递时间格式的数据 2013 03 06 22 00 00 可以正确解析 但用自己手动拼接
  • 百练_2718:晶晶赴约会

    描述 晶晶的朋友贝贝约晶晶下周一起去看展览 xff0c 但晶晶每周的1 3 5有课必须上课 xff0c 请帮晶晶判断她能否接受贝贝的邀请 xff0c 如果能输出YES xff1b 如果不能则输出NO 输入 输入有一行 xff0c 贝贝邀请晶
  • 百练_2723:不吉利日期

    描述 在国外 xff0c 每月的13号和每周的星期5都是不吉利的 特别是当13号那天恰好是星期5时 xff0c 更不吉利 已知某年的一月一日是星期w xff0c 并且这一年一定不是闰年 xff0c 求出这一年所有13号那天是星期5的月份 x
  • 数据结构_练习 第4章 串、数组和广义表

    1 xff0e 选择题 xff08 1 xff09 串是一种特殊的线性表 xff0c 其特殊性体现在 xff08 xff09 A xff0e 可以顺序存储 B xff0e 数据元素是一个字符 C xff0e 可以链式存储 D xff0e 数
  • 数据机构_练习 第6章 图

    1 xff0e 选择题 xff08 1 xff09 在一个图中 xff0c 所有顶点的度数之和等于图的边数的 xff08 xff09 倍 A xff0e 1 2 B xff0e 1 C xff0e 2 D xff0e 4 答案 xff1a
  • 数据结构_练习 第7章  查找

    1 xff0e 选择题 xff08 1 xff09 对 n 个元素的表做顺序查找时 xff0c 若查找每个元素的概率相同 xff0c 则平均查找长度为 xff08 xff09 A xff0e n 1 2 B xff0e n 2 C xff0
  • 数据结构_练习 第8章 排序

    1 xff0e 选择题 xff08 1 xff09 从未排序序列中依次取出元素与已排序序列中的元素进行比较 xff0c 将其放入已排序序列的正确位置上的方法 xff0c 这种排序方法称为 xff08 xff09 A xff0e 归并排序 B