菜鸟提问 c语言关于快速排序

菜鸟提问 c语言关于快速排序

图片[1]-菜鸟提问 c语言关于快速排序-学吧号

其实,最想说明的是那段交换的代码R[j]^=R[i]; R[i]^=R[j]; R[j]^=R[i]; 一定要排除 i==j 的情况。即自己与自己交换的情况。

如:a=9;a^=a;/*a=0*/a^=a;/*a=0*/a^=a;/*a=0*/a就不再是10了。

菜鸟真心求教:SQLite中数据的排序

图片[2]-菜鸟提问 c语言关于快速排序-学吧号

sqlite中存数据的时候是按照存入的顺序排的,因为设置了Id自增长,所以查出是数据也就是按id 升序排序。

【菜鸟求教】,怎么用C语言,结构随机生成若干个时间并排序呀,…”

图片[3]-菜鸟提问 c语言关于快速排序-学吧号

#include <stdio.h>
#include <stdlib.h>
typedef struct _timelist
{
  int h;
  int m;
  int s;
  int sum;
  struct _timelist* next;
}timelist,*ptimelist;
timelist * first;//指向链头
void creatime(int size);//创建你需要的时间
void sorttime();//对你所需要的时间排序,我是按升序
void sortab(ptimelist *a,ptimelist *b);//把B数据给a数据
void display();//输出
void deletetimelist();
int main()
{
  int size;
  first=NULL;
 printf(“请输入你需要创建的时间个数\n”);
 scanf(“%d”,&size);
 creatime(size);
 stime();
 display();
 deletetimelist();
 return 0;
}
void display()
{
  timelist *p;
  for(p=first;p!=NULL;p=p->next)
  {
      printf(“\t\t\t%-2d h:%-2d m:%-2d s\n”,p->h,p->m,p->s);
  }
}
void stime()
{
  int flag;
 timelist *p1,*p2;//指向链表操作的当前节点
 timelist *t,*tt;//用于交换
 tt=malloc(sizeof(timelist));
 for(p1=first;p1->next!=NULL;p1=p1->next)//冒泡排序,败笔,数据结构白学了,找不出比这更垃圾的算法了。

THE END
喜欢就支持一下吧
点赞9
温馨提示:

1、本内容转载于网络,版权归原作者所有!
2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
3、本内容若侵犯到你的版权利益,请联系我QQ:243371741,会尽快给予删除处理!