摘要: int binarySearch(int *p,int find,int l,int h) { int mid; while(l<=h) { mid=(l+h)/2; if(find==p[mid]) { return mid; } else if(find>p[mid]) { l=mid+1; } 阅读全文
posted @ 2022-01-10 17:11 sunshine_gzw 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 思想:选定中轴,然后然后比中轴元素小的放在左边,大的放在右边,然后依次递归左边和右边,直到所有中轴归位。 void quicksort(int* p,int l,int h) { if(l<h) { int pivot=p[l]; int lo=l,high=h; while(lo<high) { 阅读全文
posted @ 2022-01-10 16:28 sunshine_gzw 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 所谓冒泡排序,本质上是从后往前确定元素的过程. void swap(int *p,int *q) { *p^=*q; *q^=*p; *p^=*q; } void popsort(int* p,int n) { for(int i=0;i<n-1;i++) { for(int j=0;j<n-1-i 阅读全文
posted @ 2022-01-10 14:40 sunshine_gzw 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 所谓选择排序,就是从头到尾逐个确定元素的过程,比如: 3 1 4 5,现在我要对他进行升序排序,最后结果也就是:1 3 4 5. 先确定第一个位置:也就是3 1 4 5中的3,把这个3先按住不动,然后后面的依次和它比较,如果比他小就交换. void sort(int *p,int *q) { *p^ 阅读全文
posted @ 2022-01-10 14:01 sunshine_gzw 阅读(13) 评论(0) 推荐(0) 编辑
摘要: #include <stdio.h> #include<string.h> #include<stdlib.h> char* encode(char* buf,int line) { int len=strlen(buf); int nlen=len; if(len%line) nlen=len+( 阅读全文
posted @ 2022-01-10 10:55 sunshine_gzw 阅读(42) 评论(0) 推荐(0) 编辑