在《用python构造等幂和数组的一种方法》里面,我介绍了一种构造等幂和数组的方法。在《Thue-Morse 序列的一种构造方法》里面,我介绍了Thue-Morse 序列的构造方法。本文,用类似的理念,来构造一种等幂和数组。1用python构造等幂和数组的一种方法1Thue-Morse 序列的一种构造方法
工具/原料
1
电脑
2
python3.6(anaconda)
方法/步骤
1
算法基础:把0到7这8个数字,写成二进制的形式;如果二进制形式里面,“1”的个数是偶数,就把它放到集合a里面;如果二进制形式里面,“1”的个数是奇数,就把它放到集合b里面。
2
这样得到两个数组:a=[0 3 5 6]b=[1 2 4 7]这两个数组的一次方和二次方和相等。
3
把0到15分成两个等幂和数组。[ 0 3 5 6 9 10 12 15][ 1 2 4 7 8 11 13 14]
4
这是三次等幂和数组:这两个数组的一次方、二次方、三次方和相等。
5
把0到31分成两个四次等幂和数组:[ 0 3 5 6 9 10 12 15 17 18 20 23 24 27 29 30][ 1 2 4 7 8 11 13 14 16 19 21 22 25 26 28 31]
6
把0到63分成五次等幂和数组:[ 0 3 5 6 9 10 12 15 17 18 20 23 24 27 29 30 33 34 36 39 40 43 45 46 48 51 53 54 57 58 60 63][ 1 2 4 7 8 11 13 14 16 19 21 22 25 26 28 31 32 35 37 38 41 42 44 47 49 50 52 55 56 59 61 62]
注意事项
有时候,等幂和数组的和会出现负数,这是怎么回事?