刷课的一些杂记
关于求完美数和质数的问题,思路很简单,但是会有超时的情况,因为当求出一个数的因数时,他一定会有一个比他大或者小的因数,只要选择那个小的因数,把循环条件改成下x<那个数开平方根,就可以在循环中节省很多的时间,质数也是一样
用构建一个菱形的简便方法,则是用曼哈顿距离(一个点到另一个点的垂直和水平距离之和)来处理,菱形里面任何一个点到中心点的距离都小于构成这个菱形行数的一半,在用这个条件之内都用就可以打印出一个菱形
将一个数组翻转就是把它后面的数放在前面去,但前面的数不变,例如12345翻转两次就变成了45123,我们坐翻转问题可以用循环来赋值,将被最后一个数和倒数第二个数调换,然后将第一个数和最后一个数调换,也可以直接用反转函数,用三次,第一次是将整个数组反转过来,然后把前面起始位置的地址和翻转次数翻转,再把剩下的后面的翻转也可以达到目的
