Three Basic Sort for using C#

首先,要写一个基类:

   class CArray
    {
        private int[] arr;
        private int ElementNum;
        private int upper;

        public CArray(int size)
        {
            arr = new int[size];
            ElementNum = 0;
            upper = size - 1;
        }

        public void Insert(int item)
        {
            for (int i = 0; i <= upper; i++)
            {
                arr[ElementNum] = item;
               
            }ElementNum++;
        }

        public void Clear()
        {
            for (int i = 0; i <= upper; i++)
            {
                arr[ElementNum] = 0;
            }
            ElementNum = 0;
        }

        public void Display()
        {
            for (int i = 0; i <= upper; i++)
                Console.Write(arr[i] + " ");
            Console.Write("/n");
        }

        //冒泡排序:
        public void BubbleSort()
        {
            int temp;
            for (int outer = 1; outer <= upper; outer++)
            {
                for (int inner = 0; inner <= upper; inner++)
                {
                    if (arr[inner] > arr[outer])
                    {
                        temp = arr[inner];
                        arr[inner] = arr[outer];
                        arr[outer] = temp;
                    }
                }
            }
        }

        //选择排序:
        public void SelectionSort()
        {
            int temp;
            int min;
            for (int outer = 1; outer <= upper; outer++)
            {
                temp = arr[outer];
                min = outer;
                for (int inner = outer + 1; inner <= upper; inner++)
                {
                    if (arr[inner] <= arr[min])
                    {
                        min = inner;
                    }
                }
                temp = arr[outer];
                arr[outer] = arr[min];
                arr[min] = temp;
            }
        }
        //插入排序:
        public void InsertionSort()
        {
            int temp; int outer; int inner;
            for (outer = 1; outer <= upper; outer++)
            {
                temp = arr[outer];
                inner = outer;
                while (inner > 0 && arr[inner - 1] >= temp)
                {
                    arr[inner] = arr[inner - 1];
                    inner -= 1;
                }
                arr[inner] = temp;
            }
        }
    }
测试:

  static void Main(string[] args)
        {
            CArray ca = new CArray(10);
            Random rd = new Random();
            for (int i = 0; i < 10; i++)
                ca.Insert(Convert.ToInt32(rd.NextDouble()*100));
            Console.Write("未排序的:");
            ca.Display();
            Console.Write("经过冒泡排序:");
            ca.BubbleSort();
            ca.Display();
            Console.Write("经过选择排序:");
            ca.SelectionSort();
            ca.Display();
            Console.Write("经过插入排序:");
            ca.Display();

        }

结果:

未排序的:49 5 78 46 46 49 73 33 75 23
经过冒泡排序:5 23 33 46 46 49 49 73 75 78
经过选择排序:5 23 33 46 46 49 49 73 75 78
经过插入排序:5 23 33 46 46 49 49 73 75 78
请按任意键继续. . .

要在C#的Web项目中与Three.js进行交互,你可以使用JavaScript与C#之间的通信机制。以下是一种常见的方法: 1. 在前端页面中引入Three.js库和自定义的JavaScript代码: ```html <!DOCTYPE html> <html> <head> <title>Three.js和C# Web项目交互</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js"></script> <script> // 自定义的JavaScript代码 // 在这里可以使用Three.js创建和操作3D场景 // 可以使用WebSocket或AJAX等方式将数据发送到后端 // 也可以使用WebSocket或AJAX等方式接收从后端发送过来的数据 </script> </head> <body> <!-- 这里可以放置Three.js渲染的Canvas元素或其他HTML元素 --> </body> </html> ``` 2. 在C#的后端代码中处理与前端的通信: 你可以使用ASP.NET的一些技术来处理与前端的通信。以下是一种基本的方法,使用ASP.NET Web API来处理与前端的数据交互: ```csharp using System.Web.Http; namespace YourNamespace { public class ThreeJsController : ApiController { // POST api/threejs public IHttpActionResult Post([FromBody]dynamic data) { // 在这里处理从前端发送过来的数据 // 可以对数据进行处理、存储或调用其他业务逻辑 // 返回响应给前端 return Ok(); } } } ``` 在上述代码中,我们创建了一个继承自`ApiController`的控制器类。通过使用`[FromBody]`特性,我们可以接收从前端发送过来的数据,并在`Post`方法中进行处理。你可以在该方法中添加逻辑来处理数据、存储到数据库、调用其他服务等。 3. 配置路由和Web API: 在`Global.asax.cs`文件中,你需要配置路由以及注册Web API路由。例如: ```csharp using System.Web.Http; using System.Web.Routing; namespace YourNamespace { public class Global : System.Web.HttpApplication { protected void Application_Start() { // 配置Web API路由 GlobalConfiguration.Configure(WebApiConfig.Register); // 其他初始化配置 } } } ``` 在`App_Start`文件夹中,你需要创建一个名为`WebApiConfig.cs`的文件,并根据需要配置Web API路由: ```csharp using System.Web.Http; namespace YourNamespace { public static class WebApiConfig { public static void Register(HttpConfiguration config) { // 配置Web API路由 config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); } } } ``` 通过以上步骤,你就可以在C#的Web项目中与Three.js进行交互了。前端的JavaScript代码可以使用Three.js创建和操作3D场景,并通过WebSocket、Ajax等方式将数据发送到后端。后端的C#代码可以处理从前端发送过来的数据,并进行相应的逻辑处理和响应。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值