1.写出冒泡,选择,插入排序算法。

//冒泡排序
    public class bubblesorter
    {

public void sort(int[] list)
        {
            int length = list.Length;
            for (int i = 0; i < length; i++)
            {

for (int j = length - 1; j > i; j--)
                {
                    if (list[j - 1] > list[j])
                    {
                        int temp;
                        temp = list[j];
                        list[j] = list[j - 1];
                        list[j - 1] = temp;
                    }
                }
            }
        }

}
    //选择排序
    public class selectionsorter
    {
        private int min;
        public void sort(int[] list)
        {
            for (int i = 0; i < list.Length - 1; i++)
            {
                min = i;
                for (int j = i + 1; j < list.Length; j++)
                {
                    if (list[j] < list[min])
                        min = j;
                }
                int t = list[min];
                list[min] = list[i];
                list[i] = t;
            }
        }
    }
    //插入排序
    public class insertionsorter
    {
        public void sort(int[] list)
        {
            for (int i = 1; i < list.Length; i++)
            {
                int t = list[i];
                int j = i;
                while ((j > 0) && (list[j - 1] > t))
                {
                    list[j] = list[j - 1];
                    --j;
                }
                list[j] = t;
            }
        }
    }
2.有一列数1,1,2,3,5,........求第30个数.

public class MainClass
{
    public static void Main()
    {
        Console.WriteLine(Foo(30));
    }
    public static int Foo(int i)
    {
        if (i <= 0)
            return 0;
        else if (i > 0 && i <= 2)
            return 1;
        else return Foo(i - 1) + Foo(i - 2);
    }
}

3. 程序设计: 猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。

public delegate void SubEventHandler();
    public abstract class Subject 
    {
        public event SubEventHandler SubEvent;
        protected void FireAway() 
        {
            if (this.SubEvent != null)
                this.SubEvent();
        }  
    }
    public class Cat : Subject 
    { 
        public void Cry() 
        {
            Console.WriteLine(cat cryed.);
            this.FireAway();
        }
    }
    public abstract class Observer 
    {
        public Observer(Subject sub) 
        {
            sub.SubEvent += new SubEventHandler(Response);
        }
        public abstract void Response();   
    }
    public class Mouse : Observer 
    {
        private string name;
        public Mouse(string name, Subject sub) : base(sub) 
        {  
            this.name = name;
        }
        public override void Response() 
        {
            Console.WriteLine(name +  attempt to escape!);
        }
    }
    public class Master : Observer 
    {
        public Master(Subject sub) : base(sub){} 
        public override void Response() 
        {
            Console.WriteLine(host waken);
        }
    }
    class Class1 
    {
        static void Main(string[] args) 
        {
            Cat cat = new Cat();
            Mouse mouse1 = new Mouse(mouse1, cat);
            Mouse mouse2 = new Mouse(mouse2, cat);
            Master master = new Master(cat);
            cat.Cry();
        }

}
4.有一个字符串 "I am a good man",设计一个函数,返回 "man good a am I"。

5.A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些
  人参加了竞赛:

(1)A参加时,B也参加;

(2)B和C只有一个人参加;

(3)C和D或者都参加,或者都不参加;

(4)D和E中至少有一个人参加;

(5)如果E参加,那么A和D也都参加。

static void Main(string[] args)
        {

char[] name=...{'A','B','C','D','E'};
            int[] value = new int[5];
            for (value[0]=0;value[0]<2;value [0]++)
                for (value[1]=0; value[1] < 2; value[1]++)
                    for (value[2]=0; value[2] < 2; value[2]++)
                        for (value[3]=0; value[3] < 2; value[3]++)
                            for (value[4]=0; value[4] < 2; value[4]++)
                            {
                                if ((value[1] >= value[0]) && (value[1] + value[2] == 1) && (value[2] == value[3]) && (value[3] + value[4]==1) && (value[4]==0 || value[4]==1 && value[0]==1 && value[3]==1))
                                {
                                    for (int i = 0; i < 5; i++)
                                    {
                                        if (value[i]==1)
                                        {
                                            Console.WriteLine("{0}参加", name[i]);
                                        }
                                        else
                                        {
                                            Console.WriteLine("{0}不参加", name[i]);
                                        }
                                    }
                                }
                            }
}
6.题目:
a user entered an integer value into a text box. Without using a buit-in library, convert the numeric string to its integer representation.

static int StringTolnt(string s)
        {
            int sum = 0;
            for (int i = 0; i < s.Length; i++)
                sum = sum * 10 + (s[i] - '0');
            return sum;
        }

C#常见算法题目(面试准备)相关推荐

  1. 10个JS常见算法题目

    1.冒泡排序调优(从小到大排序) 2.输出九九乘法表 3.输出水仙花数 4.1–10的阶乘和 5.输出1900年至2100年中的所有闰年 6.输出10–100之间的所有素数 7.1,2,3,4四个数字 ...

  2. C#的常见算法(面试)(转)

    一.求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+--+m //方法一,通过顺序规律写程序,同时也知道flag标志位的重要性. static int F1(int m) { in ...

  3. java java算法题目_java常见算法题目

    1: JAVA经典算法40题 2: [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 3 ...

  4. 小明酱的算法实习生面试准备

    今天早上参加了奇点机智的算法题笔试,然后下午就收到通知挂掉了,心里很不是滋味,面对后来要参加的猫眼.阿里.百度的面试肩上的担子感觉更重了,晚上游了1km,吃了顿百富烤霸整理好心情,现在开始重新出发,准 ...

  5. 本专栏所有力扣题目的目录链接, 刷算法题目的顺序(由易到难/面试频率)/注意点/技巧, 以及思维导图源文件问题(持续更新中)

    这篇文章为本专栏所有力扣题目提供目录链接, 更加方便读者根据题型或面试频率进行阅读, 此外也会介绍我在刷题过程中总结的刷算法题目的顺序/注意点/技巧, 最后说下文中出现的思维导图源文件的问题 和 打卡 ...

  6. JavaScript 面试中常见算法问题详解

    JavaScript 面试中常见算法问题详解,翻译自 https://github.com/kennymkchan/interview-questions-in-javascript.下文提到的很多问 ...

  7. 微软面试中简单的算法题目(转)

    微软面试中简单的算法题目(转) (说明:这些题就不是什么花样了,考的是你的基础知识怎么样.再聪明而没有实学的人都将会被这些题所淘汰.)  1.链表和数组的区别在哪里? ANSWER 主要在基本概念上的 ...

  8. 语言高精度算法阶乘_JavaScript中的算法(附10道面试常见算法题解决方法和思路)...

    https://juejin.im/post/6844903811505455118 Introduction 面试过程通常从最初的电话面试开始,然后是现场面试,检查编程技能和文化契合度.几乎毫无例外 ...

  9. Java面试常见算法

    在程序员的职业生涯中,算法亦算是一门基础课程,尤其是在面试的时候,很多公司都会让程序员编写一些算法实例,例如快速排序.二叉树查找等等. 本文总结了程序员在代码面试中最常遇到的10大算法类型,想要真正了 ...

最新文章

  1. [WP]使用ApacheCordova开发HTML5-WindowsPhone应用程序
  2. python第二大奇数_python-2.7 – matplotlib,包含奇数个子图
  3. JDK和cglib动态代理代码示例
  4. SAP Kyma GraphQL storage实现
  5. labelme 语义分割数据集_RangeNet++: 快速精确的雷达数据语义分割(IROS 2019)
  6. git repo使用心得
  7. Oracle BCT(Block Change Tracking)与增量备份
  8. 以下选项中表述为oracle,oracle 选择题
  9. Debug gradle task
  10. Swift-初始化失败处理方法
  11. Xml中SelectSingleNode方法,xpath查找某节点用法
  12. java mongodb geo,通过GeoServer在MongoDB中提供地理空间数据
  13. Restlet 短连接问题
  14. AI助力教学升级,掌门优课智能互动双师课程获用户认可
  15. 在java中move是什么意思_move是什么意思
  16. 如何在行业内苟住(老手勿喷)
  17. deque实现生产者-消费者队列
  18. jelly_Android Jelly Bean通知教程
  19. C语言实现二叉树的非递归遍历
  20. Python之特征选择实战(转载)

热门文章

  1. Java EE 8停步不前:Java社区能否扭转乾坤?
  2. Android Studio IDE Out of Memory
  3. Kinect+OpenNI学习笔记之2(获取kinect的颜色图像和深度图像)
  4. 【重点:DP 双指针 栈】LeetCode 42. Trapping Rain Water
  5. 机器学习总结(一):线性回归、岭回归、Lasso回归
  6. 【算法基础】动态规划解题实例之野营问题
  7. caffe-ssd中非极大值抑制NMS的原理和实现方法
  8. 你真的弄清楚FocalLoss的细节了吗?
  9. win10关闭445端口
  10. python 内置函数:iter()