Codelearn

分享Python,C/C++相关的技术文章, 海洋饼干叔叔@重庆大学

  对于表达式a && b,当a为假时,整个逻辑表达式的结果必为假,评估表达式b的值是不必要的。同样的情况也发生在表达式c || d中,当c为真时,d的真假不影响整个表达式的值。在上述情形下,编译器会略过表达式b和d的运算,这种行为就好比电路“短路”时,电流总是沿阻抗最低的“近路”行进,称之为“布尔运算的短路”。

  将两个有序的子数组合并为一个整体有序的数组跟幼稚园里小朋友排队的道理差不多。假设小一班和小二班的小朋友已经按照身高由低到高排好队了,你是幼儿园老师,需要将小一班和小二班的队列合并为按身高由低到高的单一队列,那么,你很容易得到下述算法:比较排头位的两位小朋友的身高,将其中较矮的小朋友“拉”到新的队列中去;重复上述过程直至两个队列的小朋友都被拉完为止。如果其中一个队列的小朋友提前被拉完,那么另一个队列的剩余小朋友依次拉入新队列即可。