糟糕的C语言睡眠排序算法

不知道大家知道这个算法没有,就是靠睡觉完成排序的。

比如数字1 4 3,第一个数字1的时候,创建一个线程,然后让线程休眠1个时间单位,依次是 4 和 3个单位。

因为睡眠的时间不同,线程醒的时间也不同。3会比4先醒过来,这就完成了简单的排序。

如果在面试的时候,你想不起冒泡,想不起归并,也想不起快排,就偷偷懒,来一个睡觉也可以的排序算法试试。

不过这个算法的性能堪称史上最差,千万不要用在项目里面,被打的话,博主是不会负责医药费的哦。

我写的简单排序代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>#define MAX 10void *my_thread(void *arg){int tmp = *(int*)arg;usleep(tmp*1000);printf("%d ",tmp);
}int main()
{int a[MAX] = {1,2,5,6,2,8,0,3,10,4};int j = 0;pthread_t thid[MAX];for(j = 0;j<MAX;j++){printf("%d ",a[j]);}printf("\n");for(j = 0;j<MAX;j++){pthread_create(&thid[j],NULL,(void*)my_thread,&a[j]);}for(j = 0;j<MAX;j++){pthread_join(thid[j],NULL);}printf("\n");return 0;
}

代码输出:

c1162780ab19fbbc5bcab7d2912cff0f.png


031ef98ad1021ccc1bfa2fc49fe07558.png

最后,如果觉得不错,大家顺手点个赞,转发就是对我最大的鼓励和支持!

f456fa4009d250dc7eedc226c5aafb8a.png

长按识别二维码关注公众号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/464965.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Rocchio算法

其基本思想是使用训练集为每个类构造一个原型向量&#xff0c;构造方法如下&#xff1a;给定一个类&#xff0c;训练集中所有属于这个类的文档对应向量的分量用正数表示&#xff0c;所有不属于这个类的文档对应向量的分量用负数表示&#xff0c;然后把所有的向量加起来&#xf…

C语言定义:__DATE__和_TIME__

/******************************************************************** > File Name: 05-ymd.c* > Author: fly* > Mail: XXXXXXXXicode.com在这里插入代码片* > Create Time: Thu Sep 7 16:43:30 2017**********************************************…

写给小白看的,逆向工程怎么上路?

什么是逆向工程大家好&#xff0c;我是写代码的篮球&#xff0c;这篇文章转自小白哥的文章。给大家出一道思考题&#xff1a;用C语言设计一个程序&#xff0c;验证输入的密码是否是“12345678”&#xff0c;如果验证成功&#xff0c;就输出“success”&#xff0c;如果验证失败…

vue中,点击button按钮后,页面上的input框再次自动获取焦点

需求&#xff1a;点击button按钮&#xff0c;录入成功后&#xff0c;页面上的input框自动聚焦&#xff0c;快速进行下一次录入&#xff0c;提高效率 开始尝试了几种方法都没有成功 一、首先想到的用vue指令 v-focus&#xff0c;然而没有成功 <Input v-model"book.isbnO…

线程、同步与锁——Mutex想说爱你不容易

除了Lock&#xff08;&#xff09;、Monitor之外&#xff0c;我们最长用的就是Mutex了&#xff0c;但是玩不好Mutex就总会造成死锁或者AbandonedMutexException&#xff08;我就玩的不怎么好&#xff0c;在并发性访问测试的时候总是遇到关于Mutex的问题&#xff0c;各位线虫见笑…

STM32F4 串口DMA

串口DMA方式收发 笔者使用的是STM32F407VET6&#xff0c;共包含6路串口&#xff0c;页尾处程序已将全部串口的DMA收发配置完成&#xff0c;本文仅以串口1为例进行讲解。&#xff08;查看代码可直接跳至第二节或页尾处下载&#xff09; 1 STM32F4 DMA 简介 DMA&#xff0c;全称为…

在广州的几天

我前两天写了文章说过&#xff0c;我大伯去世&#xff0c;然后我请假了几天去广州。这次去广州&#xff0c;挺感慨的&#xff0c;顺便记录下自己的一些想法。广州限行广州是限行的&#xff0c;但是广州的限行我觉得很人性&#xff0c;如果是外地车牌&#xff0c;你可以在广州行…

由马化腾谈“微博修改功能”,看什么是优秀的产品经理

我仔细阅读过马化腾的的简历&#xff0c;他是一位技术出身的企业家。也是腾讯最大的产品经理,大家都知道产品经理的对产品的重要性那是不言而喻的&#xff0c;而产品是公司的灵魂。 今天早上起床&#xff0c;看到马化腾先生更新的微博。有位网络公司的CTO建议腾讯微博加一个修改…

flask 必知必会

在局域网中让其它电脑访问我的网站 from flask import Flaskapp Flask(__name__)app.route(/) def hello_world():return hello worldif __name__ __main__:app.run(debugTrue,host0.0.0.0,port9000) 转载于:https://www.cnblogs.com/wuheng-123/p/9665004.html

超酷的红外小车

推荐阅读&#xff1a;专辑|Linux文章汇总专辑|程序人生专辑|C语言我的知识小密圈关注公众号&#xff0c;后台回复「1024」获取学习资料网盘链接。欢迎点赞&#xff0c;关注&#xff0c;转发&#xff0c;在看&#xff0c;您的每一次鼓励&#xff0c;我都将铭记于心~

KEIL编译生成bin文件,并输出内存使用情况

一、STM32CubeMX生成的代码输出bin文件 输出bin文件&#xff1a; Run#1框填入的是&#xff1a;fromelf.exe空格–bin空格-o空格"$LL.bin"空格"#L"。“–bin”是两根英文短杆。 fromelf.exe --bin -o "$LL.bin" "#L"编译的时候&#x…

CRC16算法之三:CRC16-CCITT-MODBUS算法的java实现

CRC16算法系列文章&#xff1a; CRC16算法之一&#xff1a;CRC16-CCITT-FALSE算法的java实现 CRC16算法之二&#xff1a;CRC16-CCITT-XMODEM算法的java实现 CRC16算法之三&#xff1a;CRC16-CCITT-MODBUS算法的java实现 功能 实现CRC16-CCITT-MODBUS算法 支持int、short类型…

建议去华为

提问&#xff1a;老师&#xff0c;您好&#xff01;我现在手里有两个offer&#xff0c;正在艰难抉择中&#xff0c;一个是小米的相机图像调校工程师&#xff08;camera tuning&#xff09;&#xff0c;工作地在深圳&#xff0c;工资是12k*14&#xff0c;还有大概700元的餐补&am…

Stimulsoft reports .net中创建变量

Stimulsoft reports .net中创建变量<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />变量中request from user 的使用&#xff1a;可以使你在外面指定日期的选择。根据用户需要去选择不同的条件。报表中code代码中也可以使用代码…

STM32CubeMx官网下载HAL库文档资料

1、直接搜STMCubeMxFxx即可。https://www.st.com/zh/embedded-software/stm32cubef4.html#documentation

HTML5学习笔记(一):初步印象

&#xff08;一&#xff09;什么是HTML5(1)HTML5 将成为 HTML、XHTML 以及 HTML DOM 的新标准。(二)HTML5的前世今生&#xff08;1&#xff09;HTML5 是 W3C 与 WHATWG 合作的结果。W3C&#xff08;万维网联盟&#xff09;&#xff1a;World Wide Web ConsortiumWHATWG &#x…

快学好这个去给学妹修热水器

作者&#xff1a;晓宇&#xff0c;排版&#xff1a;晓宇微信公众号&#xff1a;芯片之家&#xff08;ID&#xff1a;chiphome-dy&#xff09;2021年6月25号晚上9点&#xff0c;中国南方某一线城市&#xff0c;小张正在看着前阵子新出的电影误杀2&#xff0c;窗外&#xff0c;疲…

bzoj1233 单调队列优化dp

https://www.lydsy.com/JudgeOnline/problem.php?id1233 数据结构优化dp的代码总是那么抽象 题意&#xff1a;奶牛们讨厌黑暗。 为了调整牛棚顶的电灯的亮度&#xff0c;Bessie必须建一座干草堆使得她能够爬上去够到灯泡 。一共有N大包的干草&#xff08;1<N<100000&…

Win10系统添加 Win10 LTSC2019闹钟

1、本文主要针对没有windows闹钟的情况。 2、下载Win10 LTSC 2019闹钟应用&#xff0c;并解压&#xff1a; http://www.winwin7.com/soft/xtbd-2695.html 链接&#xff1a;https://pan.baidu.com/s/1S_g6XUIezeF8_Q0rJ09cBQ 提取码&#xff1a;68gs 3、搜索Windows Powershell&…

iPhone开发笔记[1/50]:初学iPhone上用Quartz 2D画图

参考了An iOS 4 iPhone Graphics Drawing Tutorial using Quartz 2D这篇文章&#xff0c;用了30分钟在iPhone上画出了一条直线&#xff0c;核心代码全在drawRect这个方法中&#xff1a; -(void)drawRect:(CGRect)rect { CGContextRef context UIGraphicsGetCurrentContext(); C…