zoukankan      html  css  js  c++  java
  • 基础算法(C#)

    1.数列(1,1,2,3,5,8,13...)第i位是多少?  

     1         /// <summary>
     2         /// 递归
     3         /// </summary>
     4         public int Foo(int i)
     5         {
     6             if (i <= 0)
     7                 return 0;
     8             else if (i > 0 && i <= 2)
     9                 return 1;
    10             else
    11                 return Foo(i - 1) + Foo(i - 2);
    12         }

    2.求数列(1,1,2,3,5,8,13...)的和。

    1         public int Sum(int index)
    2         {
    3             int sum = 0;
    4             for (int i = 1; i <= index; i++)
    5                 sum += Foo(i);
    6             return sum;
    7         }

    3.求1-2+3-4+5-6...+m的值

     1         public int Sum(int m)
     2         {
     3             int sum = 0;
     4             if (m <= 0) return 0;
     5             for (int i = 1; i <= m; i++)
     6             {
     7                 if (i % 2 == 0)
     8                     sum -= i;
     9                 else
    10                     sum += i;
    11             }
    12             return sum;       
    13         }

    4.写一个简单的冒泡排序

     1         /// <summary>
     2         /// 冒泡排序
     3         /// </summary>
     4         public Array BubbleSort(int[] array)
     5         {
     6             if (array == null || array.Length <= 0)
     7                 return null;
     8             int temp = 0;
     9           
    10             for (int i = 0; i < array.Length - 1; i++)
    11             {
    12                 for (int j = 0; j < array.Length - 1 - i; j++)
    13                 {
    14                     if (array[j] > array[j + 1])
    15                     {
    16                         temp = array[j];
    17                         array[j] = array[j + 1];
    18                         array[j + 1] = temp;
    19                     }
    20                 }
    21             }
    22             
    23             return array;
    24         }
  • 相关阅读:
    Linux调整时区和同步时间
    wget命令
    apt-get损坏修复
    apt-get卸载命令
    apt-get命令
    ps命令
    卸载Ambari
    YARN Registry DNS启动提示“53端口被占用”错误的解决方法
    反转链表,时间复杂度O(n),空间复杂度O(1)
    简易版之最短距离
  • 原文地址:https://www.cnblogs.com/chocolatexll/p/13047533.html
Copyright © 2011-2022 走看看