1. 首页
  2. IT资讯

代码是一时的,但传奇是一世的!

代码是一时的,但传奇是一世的!

代码是一时的,但传奇是一世的!

一起来盘一下那些年你写的经典代码!

代码是一时的,但传奇是一世的!

1、no code

项目地址:

https://github.com/kelseyhightower/nocode

这是一个 GitHub 上的项目,目前标星 34k。

它的牛啤之处在于它 基于轻量级跨平台全自动不可描述工具,采用了不可描述的高级语言语法,不用写一行代码,即可部署运行,提供检测、编译、打包、安装、运行一条龙服务,安全可靠。

看完代码后,国内外的程序员纷纷留言夸奖。

代码是一时的,但传奇是一世的!

真的是阅尽天下代码,心中已然… !

2、洗牌算法

这个代码很简单,只有两行代码,但是却可以实现这个功能:对于给定的 n 个元素,生成的那个排列,每一个元素都能等概率地出现在每一个位置。

换句话说,每一个位置都能等概率地放置每个元素。

代码如下(JDK中Collections.shuffle()也是这样实现的):

for(inti = n -1; i >=0; i — )//rand(0, i) 生成 [0, i] 之间的随机整数swap(arr[i], arr[rand(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(InterruptedException e) {// TODO Auto-generated catch block              e.printStackTrace();          }          System.out.println(ms);      }  }

它原理是构造 n 个线程,它们和这 n 个数一一对应。

初始化后,线程们开始睡眠,等到对应的数那么多个时间单位后各自醒来,然后输出它对应的数。

这样最小的数对应的线程最早醒来,这个数最早被输出。

等所有线程都醒来,排序就结束了。

不要问时间复杂度,时间复杂度在这个排序上已经毫无意义!

4、AI核心代码

whileTrue:print(input(”).replace(‘吗’,”).replace(‘?’,’!’))

这段代码就是传说中的 价值一个亿的AI核心代码,来看一下效果。

代码是一时的,但传奇是一世的!

5、获取第二天时间

// 人才人才thread.sleep(86400*1000L);

5、0x5f375a86

这个数字有多神奇?你可以自己百度一下!

这个数字是某引擎的源代码里包括的一个反平方倒数的算法,其速度要比标准的牛顿迭代法快上 4 倍,而其中的关键是一行神秘的代码和一个莫名其妙的数字:[i = 0x5f3759df – ( i >> 1 ); // what the fuck? ] 。代码如下:

代码是一时的,但传奇是一世的!

没有人知道Carmack是怎么发现这个数字的。普度大学的数学家Lomont觉得很好玩,决定要研究一下卡马克弄出来的这个猜测值有什么奥秘。Lomont也是个牛人,在精心研究之后从理论上也推导出一个最佳猜测值,和卡马克的数字非常接近, 0x5f37642f。卡马克真牛,他是外星人吗?

传奇并没有在这里结束。Lomont计算出结果以后非常满意,于是拿自己计算出的起始值和卡马克的神秘数字做比赛,看看谁的数字能够更快更精确的求得平方根。结果是卡马克赢了… 谁也不知道卡马克是怎么找到这个数字的。最后Lomont怒了,采用暴力方法一个数字一个数字试过来,终于找到一个比卡马克数字要好上那么一丁点的数字,虽然实际上这两个数字所产生的结果非常近似,这个暴力得出的数字是0x5f375a86

Lomont为此写下一篇论文,”Fast Inverse Square Root”。

6、hello world

经典中的经典!这个一定要写上。

代码是一时的,但传奇是一世的!

不管你学的是什么语言,都绕不过hello world这条路的!程序员经典代码!

本文来自投稿,不代表程序员编程网立场,如若转载,请注明出处:http://www.cxybcw.com/203286.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code