.Net Core 笔试1

1、用两个线程一个输出字母一个输出数字,交替输出Chat数组

cs 复制代码
            char[] aI = "1234567".ToCharArray();
            char[] aC = "ABCDEFG".ToCharArray();
            Task task1 = null;
            Task task2 = null;

            task1 = Task.Run(() =>
            {
                foreach (var item in aI)
                {
                    Console.WriteLine(item);
                    task1.Wait(100);
                }
            });
            task2 = Task.Run(() =>
            {
                foreach (var item in aC)
                {
                    Console.WriteLine(item);
                    task2.Wait(100);
                }
            });
            Task.WaitAll(task1, task2);
            Console.ReadLine();

2、用C#代码获取文件夹里及子文件夹所有文件名

cs 复制代码
        static void Main(string[] args)
        {
            string filePath = @"E:\笔记";
            string[] strs = Directory.GetFiles(filePath, "*", SearchOption.AllDirectories);
            foreach (var item in strs)
            {
                Console.WriteLine(item);
            }
        }

3、二分查找

cs 复制代码
        //二分查找
        public static int Erfen(int[] ints, int target)
        {
            int left = 0, right = ints.Length - 1;
            
            while(left < right)
            {
                int mid = left + (right - left) / 2;
                if (ints[mid] == target)
                {
                    return mid;
                }else if (ints[mid] < target)
                {
                    left = mid + 1;
                }
                else
                {
                    right = mid - 1;
                }
            }
            return -1;
        }

4、斐波那契数列

cs 复制代码
using System.Collections;
using System.Text.Json;
namespace Test1
{
    internal class Program
    {
       
        static void Main(string[] args)
        {
            Console.WriteLine("Feibo1");
            Console.WriteLine(Feibo1(1));
            Console.WriteLine(Feibo1(2));
            Console.WriteLine(Feibo1(3));
            Console.WriteLine(Feibo1(4));
            Console.WriteLine(Feibo1(5));
            Console.WriteLine("Feibo2");
            Console.WriteLine(Feibo2(1));
            Console.WriteLine(Feibo2(2));
            Console.WriteLine(Feibo2(3));
            Console.WriteLine(Feibo2(4));
            Console.WriteLine(Feibo2(5));
            Console.WriteLine("Feibo3");
            foreach (var item in Feibo3().Take(10))
            {
                Console.WriteLine(item);//斐波那契数列
            }
        }


        //递归
        public static int Feibo1(int n)
        {
            if (n == 1)
            {
                return 0;
            }
            if (n == 2 || n == 3) { return 1; }
            if (n > 3)
            {
                return Feibo1(n-2)+Feibo1(n-1);
            }
            return 0;
        }

        //迭代循环
        public static int Feibo2(int n)
        {
            if (n == 1)
            {
                return 0;
            }
            if (n == 2) { return 1; }

            int first = 0, second = 1, next = 0;
            for (int i = 3; i <= n; i++)
            {
                next = first + second;
                first = second;
                second = next;
            }
            return next;
        }
        
        //
        public static IEnumerable<int> Feibo3()
        {
            var (x, y) = (0, 1);
            yield return x;
            yield return y;

            while (true)
            {
                (x, y) = (y, x + y);
                yield return y;
            }
        }
    }
}
相关推荐
良许Linux4 分钟前
0.96寸OLED显示屏详解
linux·服务器·后端·互联网
青灯文案15 分钟前
前端 HTTP 请求由 Nginx 反向代理和 API 网关到后端服务的流程
前端·nginx·http
m0_748254889 分钟前
DataX3.0+DataX-Web部署分布式可视化ETL系统
前端·分布式·etl
蜜獾云14 分钟前
docker 安装雷池WAF防火墙 守护Web服务器
linux·运维·服务器·网络·网络安全·docker·容器
小屁不止是运维16 分钟前
麒麟操作系统服务架构保姆级教程(五)NGINX中间件详解
linux·运维·服务器·nginx·中间件·架构
Hacker_Oldv20 分钟前
WPS 认证机制
运维·服务器·wps
ZJ_.21 分钟前
WPSJS:让 WPS 办公与 JavaScript 完美联动
开发语言·前端·javascript·vscode·ecmascript·wps
GIS开发特训营25 分钟前
Vue零基础教程|从前端框架到GIS开发系列课程(七)响应式系统介绍
前端·vue.js·前端框架·gis开发·webgis·三维gis
bitcsljl29 分钟前
Linux 命令行快捷键
linux·运维·服务器
Cachel wood1 小时前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架