百度空间 | 百度首页 
 
文章列表
 
您正在查看 "c#版数据结构" 分类下的文章

2008-07-22 16:30
public static void Hanoi(int n, string a, string b, string c)
        {
            if (n == 1)
            {
                //move the one dish of a to c
                Consol
类别:c#版数据结构 | 评论(0) | 浏览()
 
2008-06-26 18:03

题目:
有1亿个数存在文件中,而内存相对较小,如何求前1000个最大的数。

思路:
1、读取文件中前1000个数放入其中,并排序(降序)放到单链表中,纪录单链表的头和尾
2、继续读取文件中的数,和尾指针的数比较,如果大,则插入到相应位置,并删除尾指针。
3、文件读完后,单链表就纪录了前1000大的数。

时间复杂度:O(n)
空间开销:O(1000)

代码:
//假设全为整数
public int readANumFromFile(){...}

public bool canRead(){...}

public void getTop1000()

类别:c#版数据结构 | 评论(0) | 浏览()
 
2008-06-26 17:22

        public static void getMinPath_Dijkstra(List<Node<int>> blues, Node<int> root)
        {
            //init
            List<Node<int>> reds = new List<Node<int>>();
            reds.Add

类别:c#版数据结构 | 评论(0) | 浏览()
 
2008-03-26 17:27

我们常遇到这样的算法题目:
1、红黄蓝三种颜色的球分给ABC三个人,A拿的不是红色,B拿的不是黄色,C拿了蓝色。问每个人各自拿了什么颜色的球?
2、ABC三个人有不同的年龄和身高,A不是最高的但也不是最小的,B不是最年长的。问三人的年龄和身高顺序。

上面的题目在算法问题上,可以归为排列组合型问题。在数学问题上讲,应该属于散列数据问题。
比如第一题:
1、红黄蓝三种颜色的球分给ABC三个人,A拿的不是红色,B拿的不是黄色,C拿了蓝色。问每个人各自拿了什么颜色的球?
可以定义三个变量来代表

类别:c#版数据结构 | 评论(0) | 浏览()
 
2008-03-17 14:11

public class Graph<T>
    {
        /// <summary>
        /// 图包含接点
        /// </summary>
        public List<Node<T>> Nodes;
        public Graph()
        {
     

类别:c#版数据结构 | 评论(0) | 浏览()
 
     
 
 
文章存档
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     
 
最新文章评论
   
 

呵呵,正需要这个,回去试试.谢谢.
 
 

按你的说法做出了高智能的机器人,还有了感情就惨了,呵呵
 

很有可能哦,大概规则有点不同!
 
     


©2009 Baidu