算法
greymouseyu
个人主攻.NET,AJAX,SQL,希望CSDN和所有人一起成长起来。
展开
-
算法----汉诺塔的递归实现
已知有3个底座:A、B、C,在上放着n个盘子,越往上的盘子越小,要求将A上盘子移动至C上,移动过程和结果要遵守“小盘压大盘的原则”。 如果一个一个的盘子想,头一定会想大的!解决思路应该从整体考虑。即:将除每次要移动到C之外的所有盘子(n-1)看做一个整体,再分析出成功移动一个盘子的过程,最后利用递归算法解决。 递归解法(.NET实现): using System; using System.原创 2009-03-25 14:48:00 · 861 阅读 · 1 评论 -
算法----分解数例(递归实现)
设a[1]=a[2]=1,a[n]=a[1]a[n-1]+a[2]a[n-2]+...+a[n-1]a[1],其中n是正整数,求a[n]。解:利用递归算法:using System;using System.Collections.Generic;using System.Text;using System.Collections;namespace HelloWorld{ class T原创 2009-03-25 14:49:00 · 448 阅读 · 0 评论 -
算法----求最大公约数
using System;using System.Collections.Generic;using System.Text;namespace HelloWorld{ public class Gongyue { private static int[] nums = new int[] { 756, 504, 630, 2226 };原创 2009-03-25 15:21:00 · 362 阅读 · 0 评论 -
高效中英文字符串截取方法
public static string Intercept(string input, int p) { Encoding encode = Encoding.GetEncoding("gb2312"); byte[] byteArr = encode.GetBytes(input); if (byt转载 2009-04-07 13:26:00 · 440 阅读 · 0 评论 -
求第一个无重复字符
求第一个无重复字符,如"total"的第一个无重复字符是o,"teeter"的第一个无重复字符是r,效率要优于O(n的平方) 解:public static Character FirstNonRepeated(String string) { int[] counter = new int[128]; for (int i = 0; i string.l转载 2009-05-24 23:06:00 · 368 阅读 · 0 评论