当前位置: 首页 > news >正文

软件如何推广网站推广优化建设

软件如何推广,网站推广优化建设,加速百度对网站文章的收录,大学生网站策划书说明书作者简介#xff1a;დ旧言~#xff0c;目前大一#xff0c;现在学习Java#xff0c;c#xff0c;Python等 座右铭#xff1a;松树千年终是朽#xff0c;槿花一日自为荣。 望小伙伴们点赞#x1f44d;收藏✨加关注哟#x1f495;#x1f495; C语言实现快排☺️ ℹ️… 作者简介დ旧言~目前大一现在学习JavacPython等 座右铭松树千年终是朽槿花一日自为荣。 望小伙伴们点赞收藏✨加关注哟 C语言实现快排☺️ ℹ️为了追求能在最短的时间中做更多的事情更加便捷。从最早的马车到其次到最后到。都是为了便捷而发明的工具而C语言中人们也发明更加便捷的排序我们称之为------快排。 ℹ️我们最初认识的冒泡法逻辑简单但是使用起来单一占据更多内存冒泡法的短板及其明显。而快排逻辑复杂可以解决多种排序问题并且占据少量的内存。大家跟上我的步伐一起来看看C语言的快排到底是个啥 使用快排 1️⃣快排知识 我们知道快排这个函数有四个参数void* base, size_t num, size_t size,int (compar)(const void,const void*) void* base指向需要排序的数组的第一个元素地址。 size_t num排序的元素个数。 size_t size一个元素的大小单位字节数。 int (compar)(const void,const void*)是一个函数指针指向有两个参数参数类型为const void* void*无具体类型的指针可以接受任意类型指针。不能直接解引用操作也不能直接进行指针运算 2️⃣快排使用 调用qsort函数方法为qsort(arrsizeof(arr)/sizeof(arr[0])sizeof(int)int_cmp) ▪️第一个参数为数组名 ▪️第二个参数数组元素个数 ▪️第三个参数数组类型大小 ▪️第四个参数调用一个比较函数比较函数需要自己实现 3️⃣举个栗子 排一个整数数组 ▫️写出主函数 ▫️在主函数调用 qsort 函数 ▫️模拟实现比较函数 上代码 #includestdio.h #includestdlib.h//快排函数的头文件 #includestring.h//排一个整数数组 int int_cmp(const void* p1,const void* p2) {return *(int*)(p1)-*(int*)(p2); }void test1() {int arr[] { 9,8,7,6,5,4,3,2,1,0 };int sz sizeof(arr) / sizeof(arr[0]);//调用快排函数qsort(arr, sz, sizeof(arr[0]), int_cmp);//打印int i 0;for (i 0; i sz; i){printf(%d , arr[i]);}printf(\n); }int main() {//排序整数数组test1();return 0; }排一个结构体中的 age ▫️写出主函数 ▫️在主函数调用 qsort 函数 ▫️模拟实现比较函数 上代码 #includestdio.h #includestdlib.h//快排函数的头文件 #includestring.h//排一个结构体 struct stu {char name[20];int age; };int struct_cmp(const void* p1, const void* p2) {return strcmp(((struct stu*)p1)-name, ((struct stu*)p2)-name); }void test3() {struct stu arr[3] { {zhangsan,20},{lisi,19},{wangwu,18} };int sz sizeof(arr) / sizeof(arr[0]);//调用快排函数qsort(arr, sz, sizeof(arr[0]), struct_cmp);//打印int i 0;for (i 0; i 3; i){printf(%s %d\n, arr[i].name, arr[i].age);} }int main() {//排一个结构体中的agetest3();return 0; }模拟快排 为了更加深入快排知识我们来模拟这个函数 1️⃣模拟快排方法 写出主函数 主函数调用模拟的快排函数**这里需要调用交换函数返回值函数** 写出返回值函数 2️⃣模拟快排知识 返回值函数 这里的返回值函数就和上面的调用比较函数一样 //整数函数比较函数 int int_cmp(const void* p1,const void* p2) {return *(int*)(p1)-*(int*)(p2); } //结构体函数比较函数 int struct_cmp(const void* p1, const void* p2) {return strcmp(((struct stu*)p1)-name, ((struct stu*)p2)-name); }交换函数 因为需要满足每种类型的交换因此不可能交换类型只能交换每一个字节大小 我们知道char的字节数为一个字节这样的话我们可以把每种类型都转换成char类型大小就可以实现字节进行交换。 调用交换函数实参(char*)arr j * size强转成char类型偏移一个元素类型大小 void Swap(char* p1, char* p2,int size) {int i 0;char tmp 0;for (i 0; i size; i){tmp *p1;*p1 *p2;*p2 tmp;p1;p2;} }调用快排函数 调用快排函数为四个参数 ▪️第一个参数为数组名 ▪️第二个参数数组元素个数 ▪️第三个参数数组类型大小 ▪️第四个参数调用一个比较函数比较函数需要自己实现 先一个元素交换后面一个元素字节数交换采用两个for循环 上代码 void bubble_sort(void* arr, int sz, int size, int(*cmp_int)(void*, void*)) {int i 0;for (i 0; i sz - 1; i){int j 0;for (j 0; j sz - i - 1; j){if (cmp_int( (char*)arr j*size , (char*)arr (j 1)*size ) 0){Swap((char*)arr j * size, (char*)arr (j 1) * size, size);}}} }3️⃣举个栗子 排一个整数数组 //返回值函数 int cmp_int(const int* p1, const int* p2) {return *(int*)(p1)-*(int*)(p2); }//交换函数 void Swap(char* p1, char* p2,int size) {int i 0;char tmp 0;for (i 0; i size; i){tmp *p1;*p1 *p2;*p2 tmp;p1;p2;} }//模拟快排 void bubble_sort(void* arr, int sz, int size, int(*cmp_int)(void*, void*)) {int i 0;for (i 0; i sz - 1; i){int j 0;for (j 0; j sz - i - 1; j){if (cmp_int( (char*)arr j*size , (char*)arr (j 1)*size ) 0){Swap((char*)arr j * size, (char*)arr (j 1) * size, size);}}} }//排序整数数组 void test1() {int arr[] { 9,8,7,6,5,4,3,2,1,0 };int sz sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz, sizeof(arr[0]), cmp_int);//打印int i 0;for (i 0; i sz; i){printf(%d , arr[i]);}printf(\n); }int main() {//实现qsort模拟之排序整数数组test1();return 0; }排一个结构体中的 age //返回值函数 struct stu//定义结构体 {char name[20];int age; }; int cmp_struct(const int* p1, const int* p2) {return strcmp(((struct stu*)p1)-name, ((struct stu*)p2)-name); }//交换函数 void Swap(char* p1, char* p2,int size) {int i 0;char tmp 0;for (i 0; i size; i){tmp *p1;*p1 *p2;*p2 tmp;p1;p2;} }//模拟快排 void bubble_sort(void* arr, int sz, int size, int(*cmp_int)(void*, void*)) {int i 0;for (i 0; i sz - 1; i){int j 0;for (j 0; j sz - i - 1; j){if (cmp_int( (char*)arr j*size , (char*)arr (j 1)*size ) 0){Swap((char*)arr j * size, (char*)arr (j 1) * size, size);}}} }//排序结构体age void test2() {struct stu arr[3] { {zhangsan,20},{lisi,19},{wangwu,18} };int sz sizeof(arr) / sizeof(arr[0]);bubble_sort(arr, sz, sizeof(arr[0]), cmp_struct);//打印int i 0;for (i 0; i 3; i){printf(%s %d\n, arr[i].name, arr[i].age);} }int main() {//实现qsort模拟之排序结构体agetest2();return 0; }结束语 今天内容就到这里啦时间过得很快大家沉下心来好好学习会有一定的收获的大家多多坚持嘻嘻成功路上注定孤独因为坚持的人不多。那请大家举起自己的小说给博主一键三连有你们的支持是我最大的动力回见。
http://wiki.neutronadmin.com/news/67233/

相关文章:

  • 云南机场建设集团网站租车网站建设
  • 迎访问中国建设银行网站-深圳网站建设哪家好
  • 苏州市建设工程质量监督站网站创建5a 网站建设要求
  • 宝安附近公司做网站建设哪家效益快ppt素材免费网站
  • 内蒙古建设网站模板网建站
  • 怎么在视频网站做淘宝客口碑营销的经典案例
  • 帮别人做彩票网站吗一对一软件
  • 利用wix建手机网站h5网站建设代理
  • 网站设计的一般流程是什么如何做好企业网站建设工作
  • 网站更改备案信息在哪里小程序开发难吗
  • 迅雷网站做爰视频自己有货源怎么找客户
  • 深圳免费模板建站中国建设教育协会的网站查询
  • 做网站后台数据库建设公司网站经常打不开
  • 做海报文案的参考网站asp网站开发教程
  • 培训学校网站系统温州阀门网站建设
  • 网站建设的培训的感受网站seo招聘
  • 建网站需要多少钱项目管理系统软件开发
  • 做网站需要审批不wordpress 模版定制
  • 和君设计专业网站建设公司天津建设工程信息网登录不了
  • 儿童教育网站怎么做有趣巩义网站优化
  • 网站建设 有限公司html教程网站
  • 做物流的都是上什么网站wordpress域名根管
  • 企业网站建设首页要写什么内容怎么设计网页主页
  • 青岛 公司 网站建设湖南搜索引擎推广软件
  • 佛山做网站公司排名泉州seo关键词排名
  • 广州免费建站推荐用腾讯云做会员网站
  • 富顺网站建设做公司子网站的请示报告
  • 暗网是什么网站wordpress 主题 强大
  • 做网站目的对网站建设服务公司的看法
  • 南宁网站运营优化平台四川建设网项目招标公告