C#,.NET常见算法
创始人
2025-01-07 12:04:20
0次

1.递归算法

1.1.C#递归算法计算阶乘的方法

using System;  namespace C_Sharp_Example {     public class  Program     {         ///          /// 阶乘:一个正整数的阶乘Factorial是所有小于以及等于该数的正整数的积,0的阶乘是1,n的阶乘是n!         ///         public static void Main()         {             int result = Factorial(5);             Console.WriteLine("5的阶乘是:"+result);             Console.ReadLine();         }          private static int Factorial(int v)         {             if(v == 0 || v == 1)             {                 return 1;             }             else             {                 return v * Factorial(v-1);             }         }     } }

1.2.C#递归算法计算数组的和

using System;  namespace C_Sharp_Example {     public class  Program     {         ///          /// 数组求和         ///         public static void Main()         {             int[] numbers = { 1,2,3,4,5};             int sum = ArraySum(numbers,0);             Console.WriteLine("数组的和是:"+sum);             Console.ReadLine();         }          private static int ArraySum(int[] arr, int v)         {             if(v>=arr.Length)             {                 return 0;             }             else             {                 return arr[v] + ArraySum(arr, v + 1);             }         }     } }

 1.3.C#递归算法实现斐波那契数列第三十位数字

using System;  namespace C_Sharp_Example {     public class  Program     {         ///          /// 实现斐波那契数列的第三十位,已知斐波那契数列1,1,2,3,5,8,自身计算前二个之和         ///         public static void Main()         {             int n = 30;             int result = feibonaqi(30);             Console.WriteLine("斐波那契数列第三十位是:"+result);             Console.ReadLine();                 }          private static int feibonaqi(int v)         {             if(v <= 0)             {                 return 0;             }             else if(v > 0 && v <=2)             {                 return 1;             }             else             {                 return feibonaqi(v - 1) + feibonaqi(v - 2);             }         }     } }

1.4.C#递归算法计算1-100的和

using System;  namespace C_Sharp_Example {     public class  Program     {         ///          /// 计算1-100-sum         ///         public static void Main()         {             int result = SumNumber(100);             Console.WriteLine("1+2+3+4+...+100="+result);             Console.ReadLine();                 }          private static int SumNumber(int v)         {             if(v ==1)             {                 return 1;             }             else             {                 return v + SumNumber(v-1);             }         }     } }

2.排序算法

2.1.冒泡排序算法

using System;  namespace C_Sharp_Example {     public class  Program     {         ///          /// 双重循环方式实现冒泡排序         ///         public static void Main()         {             int[] arr = { 1,6,4,2,3,9,8,0,7};             int arrLength = arr.Length;             for(int i =0; i< arr.Length -1; i++)             {                 for(int j=0;jarr[j+1])                     {                         int tmp = arr[j];                         arr[j] = arr[j + 1];                         arr[j + 1] = tmp;                     }                 }             }             Console.WriteLine("排序后的顺序"+string.Join(",",arr));             Console.ReadLine();         }     } }

2.2. 使用递归算法实现冒牌排序

using System;  namespace C_Sharp_Example {     public class  Program     {         ///          /// 递归方式实现冒泡排序         ///         public static void RecursiveBubbleSort(int[] arr, int arrLength)         {             if (arrLength == 1)                 return;              for(int i=0; i arr[i+1])                 {                     int tmp = arr[i];                     arr[i] = arr[i + 1];                     arr[i + 1] = tmp;                 }             }             RecursiveBubbleSort(arr,arrLength-1);         }          private static void RecursiveBubbleSortRun()         {             int[] arr = { 1,6,4,2,3,9,8,0,7};             int arrLength = arr.Length;             RecursiveBubbleSort(arr,arrLength);             Console.WriteLine("排序后的结果"+string.Join(",",arr));             Console.ReadLine();         }     } }

更新中 ~~~ 创作不易,喜欢点赞收藏加关注 ❤

相关内容

热门资讯

最新技巧!!wepoker有没... 很多人使用云端 AI 时,都担心wepoker有没有辅助、内部资料上传带来隐私风险。这款本地运行的 ...
一秒答解!wepoker怎么增... 您好,一秒答解!wepoker怎么增加运气,WPK有挂吗确实有挂下载(最初有辅助挂)这款游戏可以开挂...
一秒答解!wpk辅助器,德扑之... wpk辅助器AI 游戏攻略黑科技上线本地缓存功能,离线查阅能力开挂。提前下载对应游戏攻略数据包,断网...
分辨真假!德普之星透视辅助,w... 分辨真假!德普之星透视辅助,wepoker开挂透视教程脚本(总是是真的有辅助挂)AI 是一款可以让一...
每日必看推荐!wepoker怎... 您好:wepoker怎么提高运气这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很...
推荐一款!!wepoker黑侠... 一款 AI 游戏攻略黑科技工具上线,查攻略效率直接开挂。它整合版本更新、装备搭配、BOSS 打法、牌...
一秒答解!wpk俱乐部辅助器,... 一秒答解!wpk俱乐部辅助器,德扑之星开挂脚本助手(固有有辅助器)AI 是一款可以让一直输的玩家修复...
玩家攻略!wepoker好友房... 您好,玩家攻略!wepoker好友房开挂,WPK哪里有挂神器(一贯有开挂)这款游戏可以开挂的,确实是...
重大通报!!智星德州可以透视吗... 很多人使用云端 AI 时,都担心智星德州可以透视吗、内部资料上传带来隐私风险。这款本地运行的 AI ...
玩家爆料!智星菠萝有挂吗,WP... 智星菠萝有挂吗AI 游戏攻略黑科技上线本地缓存功能,离线查阅能力开挂。提前下载对应游戏攻略数据包,断...