C#算法从入门到跑路 第1章:栈的应用
2020/3/5 21:01:33
本文主要是介绍C#算法从入门到跑路 第1章:栈的应用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
括号匹配
/// <summary> /// 判断括号匹配 /// </summary> /// <param name="str">字符串</param> /// <returns>返回是否匹配</returns> public static bool BracketsJudge(string str) { IStack<char> sk = new LinkStack<char>(); for(int i=0;i<str.Length;++i) { char ch = str[i]; if (ch == '(' || ch == '[' || ch == '{') sk.Push(ch); else if (ch == ')') { if (sk.Pop() != '(') return false; } else if (ch == ']') { if (sk.Pop() != '[') return false; } else if (ch == '}') { if (sk.Top != '{') return false; sk.Pop(); } } return sk.IsEmpty(); }
进制转换
/// <summary> /// 进制转换 /// </summary> /// <param name="num">原始数字</param> /// <param name="p" >进制数</param> /// <returns>返回字符串</returns> public static string From10(int num,int p) { if (num == 0) return "0"; IStack<int> sk = new LinkStack<int>(); StringBuilder sb = new StringBuilder(); while(num!=0) { sk.Push(num % p); num /= p; } while(!sk.IsEmpty()) { var u=sk.Pop(); if (u > 10) sb.Append((char)('A' + u - 10)); else sb.Append((char)(u+48)); } return sb.ToString(); }
这篇关于C#算法从入门到跑路 第1章:栈的应用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#
- 2024-01-24Advanced .Net Debugging 1:你必须知道的调试工具