• 挤地铁和冒泡排序


    改造了的冒泡

    BubbleSort
     1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
    5
    6 namespace BubbleSort
    7 {
    8 class Program
    9 {
    10
    11 static void Main(string[] args)
    12 {
    13 int[] people ={ 1, 3, 4, 5, 6, 8, 9, 22, 55, 31, 32, 56, 22, 99, 100, 20, 2, 22, 44, 66 };
    14 for (int i = 0; i < people.Length; i++)
    15 {
    16 for (int j = i; j < people.Length; j++)
    17 {
    18 int pangpang;
    19 if (people[i] > people[j])
    20 {
    21 pangpang = people[i];
    22 people[i] = people[j];
    23 people[j] = pangpang;
    24 }
    25 }
    26 }
    27 foreach (int getoff in people)
    28 {
    29 Console.Write(getoff+" ");
    30 }
    31 Console.ReadLine();
    32 }
    33 }
    34 }

    北京的地铁啊,实在是痛苦,尤其是一号线,还好多车没空调,大热天的,本来就热,再加上车里面人比空气还多,谁都想到站赶紧下车喘口气,哎,憋死我了,呵呵,哪天线都换车了,怎么就一号线不换车呢,害的每次走出复兴门,我都是一身大汗,郁闷啊实在郁闷。。。。。好像跑题了,这个和我上面给的程序没啥关系,好的,那么我们言归正传。

    呵呵,冒泡排序,再简单不过了,不过可能对于新入门的程序员来说,这个算法检验了FOR和IF最直接的用法,有时候根本记不住或者无法运用得当,那么我们怎么能入门进入程序的世界呢。

    程序这东西其实和实际生活是分不开的,我们结合实际演绎一下冒泡的现实版。今天就拿地铁和冒泡做下结合。

    加入我们上面的INT数组就是我们车厢里面的人,数组中数字大小就是我们还有几站到站,也就是我们的下车需求,越小说明应该更靠近门,越应该早下车。嗯,那么这样我们就需要一个规则来让我们有序的排好队,按照需求排队下车(咳咳,不遵守规则的我们就忽略了, 虽然不少这样没有素质的人,但是大多数的我们还是守规则的,是吧)。

    一声号令,车开动了,这时候站在门口的40岁秃顶哥们就开始对他后面的小姑娘说,小姐,我还90站下车,您还几站啊【if (people[i] > people[j])】。小姑娘说了,啊,我还1站。那我们换下吧,这时候胖胖出现,就是我们定义的【int pangpang】,他一来,两臂一架,气运丹田,嘿~~换,这时候第1个哥们和第2个小姐就换了位置,接着小姐为还有比我早的嘛,没有我就站第一个了,你们就别问我了(每次内层循环可以少访问一次【(int j = i; j < people.Length; j++)】)。车厢内鸦雀无声,第外层循环第一遍迭代完成。然后小姐后面的人问了下,也就是那个40岁左右的秃头,结果他又换了位置。哦哦哦。就这样,大家都换到了满意的位置。

    嗯,这就是生活和程序的结合,其实每种算法还原为现实生活都是可以还原的,我们可以抽象,也可以还原的。

    交换过程:

    最终结果:

  • 相关阅读:
    java8 localdate 使用
    关于解决多个ifelse的探索(一)
    celery_worker异常退出
    宝塔面板实用教程(1):只需10分钟部署升讯威在线客服系统
    1个程序员单干之:怎样给我的升讯威在线客服系统编写堪比 MSDN 的用户手册
    .net core 和 WPF 开发升讯威在线客服系统:调用百度翻译接口实现实时自动翻译
    .net core 和 WPF 开发升讯威在线客服系统:怎样实现拔网线也不丢消息的高可靠通信(附视频)
    fetch API获取返回值的方式
    ant design charts 获取后端接口数据展示
    Java代码实现grpc服务
  • 原文地址:https://www.cnblogs.com/diorlv/p/BubbleSort.html
Copyright © 2020-2023  润新知