2048核心算法
2048核心算法
1.
零元素移動(dòng)至末尾
思路:從后向前依次判斷,若為零,則刪除,末尾追加0
#2.定義函數(shù),將相鄰且相同元素合并
def merge():
“”"
合并
將零元素后移
思路:,將相鄰且相同元素合并
運(yùn)行結(jié)果:
[2, 2, 0, 0] [4, 0, 0, 0]#3.定義函數(shù),將二維列表中的元素向左移動(dòng)
def move_left():
“”"
將每一行(一維列表)賦值給全局變量list_merge
在通過(guò)merge函數(shù)操作數(shù)據(jù)
運(yùn)行結(jié)果:
[[4, 0, 0, 0], [6, 4, 0, 0], [4, 0, 0, 0], [4, 4, 0, 0]]#4.定義函數(shù),將二維列表中的元素向右移動(dòng)
def move_right():
“”"
向右移動(dòng)
將每一行(反向切片)賦值給全局變量list_merge
在通過(guò)merge函數(shù)操作數(shù)據(jù)
再對(duì)list_merge反向切片
運(yùn)行結(jié)果:
[[0, 0, 0, 4], [0, 0, 2, 8], [0, 0, 0, 4], [0, 0, 2, 6]]總結(jié)
- 上一篇: python变量名长度有限制吗_url长
- 下一篇: ArcGIS空间统计-局部空间自相关