冒泡排序,是模仿鱼吐泡沫是的样子,大泡泡先浮出水面,小泡泡浮的比较慢。
今天在看冒泡排序的时候,突然想到模仿算盘的样子做排序。
首先把待排序的每个数字看作算盘的一排珠子,珠子的个数代表这个数字的大小。假设算盘倾斜的时候,珠子会发生侧移。那么当算盘倾斜的时候,第一排珠子的数量肯定是最多的,第二排珠子的数量次多,……,依此顺序,算法上的珠子呈现一个由左至右递减的顺序。
比如,第一排珠子的数量为2,第二排珠子的数量为6,第三排珠子数量为3。当算盘向左倾斜的时候,第二排的第四颗(从上到下数)珠子会向左移动,这时第二排有2颗珠子,第一排有6颗珠子;第三排的第一颗珠子向第二排珠子移动,这时第三排有2颗珠子,第二排有3颗珠子;第一排珠子的数量大于第二排,所以不用再移动了。如下图所示:
有谁能实现的……