面试有趣题汇总,不断更新中...

1、怎样把x和y的值交换而不使用中间变量?

    解决方案:

           位操作法 
            x=x^y;   
            y=x^y;  
            x=x^y;  
        或者使用加减法
             x=x+y;  
             y=x-y;  
             x=x-y;

2、绳子燃烧问题

 2.1、 一条绳子(粗细不均,长短不一),从一头点燃,全部烧完要耗时1个小时,问如何用这条绳子测出半个小时?(初级)

 2.2、 有一些绳子(粗细不均,长短不一),但是每根绳子点燃后都烧一个小时,问用什么方法可以用这些绳子计算45分钟的时间,计算1小时15分钟时间呢?(中级)

      这类题目比较简单。由于绳子是双向的,只需同时点燃绳子的两端,便可得到1/2小时的时间,这种方法暗含着以一个绳子单向点燃时间作为参照物;同时点燃两根绳子,一根双向点燃,另一根单向点燃,待第一根绳子燃烧完毕后,点燃第二根绳子的另一端,便得到45分钟时间;同理,可计算1小时15分钟时间。


 

3、一笔画四条直线穿过3x39个点

A B 点辅助,123456789是你的阵 
1.从1经过47到A
2.从A经过86到B
3.从B经过32到1
4.从1经过5 到9
1  4  7  B                 
4  5  6                       
7  8  9    
A

你可能感兴趣的:(面试有趣题汇总,不断更新中...)