那些只有几行,但是却非常牛逼的代码!

程序员的成长之路

互联网/程序员/技术/资料共享 

关注

阅读本文大概需要 3 分钟。

作者 | 编程艺术思维

来源 | urlify.cn/jqUree

1、no code

项目地址:

https://github.com/kelseyhightower/nocode

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

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

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

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

2、洗牌算法

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

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

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


    
    
  1. for( int i = n -  1; i >=  0 ; i -- )
  2.      // rand(0, i) 生成 [0, i] 之间的随机整数
  3.     swap(arr[i], arr[rand( 0, i)]) 

3、睡眠排序

代码如下:


    
    
  1. public  class SleepSort {  
  2.      public  static  void main( String[] args) {  
  3.          int[] ints = { 1, 4, 7, 3, 8, 9, 2, 6, 5};  
  4.         SortThread[] sortThreads =  new SortThread[ints.length];  
  5.          for ( int i =  0; i < sortThreads.length; i++) {  
  6.             sortThreads[i] =  new SortThread(ints[i]);  
  7.         }  
  8.          for ( int i =  0; i < sortThreads.length; i++) {  
  9.             sortThreads[i].start();  
  10.         }  
  11.     }  
  12. }  
  13. class SortThread extends Thread{  
  14.      int ms =  0;  
  15.      public SortThread( int ms){  
  16.         this.ms = ms;  
  17.     }  
  18.      public  void run(){  
  19.          try {  
  20.             sleep(ms* 10+ 10);  
  21.         }  catch (InterruptedException e) {  
  22.              // TODO Auto-generated catch block  
  23.             e.printStackTrace();  
  24.         }  
  25.         System.out.println(ms);  
  26.     }  

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

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

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

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

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

4、AI核心代码


    
    
  1. while  True:
  2.      print(input( '').replace( '吗', '').replace( '?', '!'))

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

5、获取第二天时间

代码如下:


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

6、0x5f375a86

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

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

没有人知道Carmack是怎么发现这个数字的。普度大学的数学家Lomont觉得很好玩,决定要研究一下卡马克弄出来的这个猜测值有什么奥秘。

Lomont也是个牛人,在精心研究之后从理论上也推导出一个最佳猜测值,和卡马克的数字非常接近, 0x5f37642f。

卡马克真牛,他是外星人吗?

传奇并没有在这里结束。Lomont计算出结果以后非常满意,于是拿自己计算出的起始值和卡马克的神秘数字做比赛,看看谁的数字能够更快更精确的求得平方根。

结果是卡马克赢了... 谁也不知道卡马克是怎么找到这个数字的。

最后Lomont怒了,采用暴力方法一个数字一个数字试过来,终于找到一个比卡马克数字要好上那么一丁点的数字,虽然实际上这两个数字所产生的结果非常近似,这个暴力得出的数字是0x5f375a86

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

7、hello world

嗯,这个一定要写上。不管你学的是什么语言,都肯定写过hello world的!

<END>

推荐阅读:

955.WLB 不加班公司名单新增 6 家公司,移出 1 家公司!

SpringBoot 整合 SpringMVC 原理探究

5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「2048」,即可免费获取!!

微信扫描二维码,关注我的公众号

朕已阅 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值