今天分享四个代码量很少,但很厉害很经典的算法或项目案例。如果各位技术大神还知道哪些案例,欢迎留言补充:)
今天分享四个代码量很少,但很牛逼很经典的算法或项目案例。
1、no code
项目地址:
https://github.com/kelseyhightower/nocode
这是一个 GitHub 上的项目,目前标星 34k。
它的牛逼之处在于它 基于轻量级跨平台全自动不可描述工具,采用了不可描述的高级语言语法,不用写一行代码,即可部署运行,提供检测、编译、打包、安装、运行一条龙服务,安全可靠。
看完代码后,国内外的程序员纷纷留言夸奖。
真的是阅尽天下代码,心中已然无码!
2、洗牌算法
这个代码很简单,只有两行代码,但是却可以实现这个功能:对于给定的 n 个元素,生成的那个排列,每一个元素都能等概率地出现在每一个位置。
换句话说,每一个位置都能等概率地放置每个元素。
代码如下:
- for(inti=n-1;i>=0;i--)
- swap(arr[i],arr[rand(0,i)])//rand(0,i)生成[0,i]之间的随机整数
3、睡眠排序
代码如下:
- publicclassSleepSort{
- publicstaticvoidmain(String[]args){
- int[]ints={1,4,7,3,8,9,2,6,5};
- SortThread[]sortThreads=newSortThread[ints.length];
- for(inti=0;i<sortThreads.length;i++){
- sortThreads[i]=newSortThread(ints[i]);
- }
- for(inti=0;i<sortThreads.length;i++){
- sortThreads[i].start();
- }
- }
- }
- classSortThreadextendsThread{
- intms=0;
- publicSortThread(intms){
- this.ms=ms;
- }
- publicvoidrun(){
- try{
- sleep(ms*10+10);
- }catch(InterruptedExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }
- System.out.println(ms);
- }
- }
它原理是构造 n 个线程,它们和这 n 个数一一对应。
初始化后,线程们开始睡眠,等到对应的数那么多个时间单位后各自醒来,然后输出它对应的数。
这样最小的数对应的线程最早醒来,这个数最早被输出。
等所有线程都醒来,排序就结束了。
不要问时间复杂度,时间复杂度在这个排序上已经毫无意义!
4、AI核心代码
- whileTrue:
- print(input('').replace('吗','').replace('?','!'))
这段代码就是传说中的 价值一个亿的AI核心代码,来看一下效果。
[[317553]]
各位技术大神还知道哪些案例,欢迎留言补充:)
©本文为清一色官方代发,观点仅代表作者本人,与清一色无关。清一色对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。本文不作为投资理财建议,请读者仅作参考,并请自行承担全部责任。文中部分文字/图片/视频/音频等来源于网络,如侵犯到著作权人的权利,请与我们联系(微信/QQ:1074760229)。转载请注明出处:清一色财经