C#数组排序。。。。。

dys_198102 2010-12-30 01:52:35
double Temp_=[999,233,100,23.5,342,9854,3.5]
用C#从大到小排序。。。。。高人指点。。
for (int i = 0; i < Temp_.Length; i++)
{
for (int j = i; j < Temp_.Length; j++)
{
if (Temp_[i] < Temp_[j])
{
double temp = Temp_[i];
Temp_[i] = Temp_[j];
Temp_[j] = temp;
}
}
}
...全文
286 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
马老虎 2010-12-31
  • 打赏
  • 举报
回复
[color=#59ffb]下[/color][color=#59fcb]a[/color][color=#59f9b]c[/color][color=#59f6b]c[/color][color=#59f3b]c[/color][color=#59f0b]c[/color][color=#59edb]c[/color][color=#59eab]c[/color][color=#59e7b]c[/color][color=#59e4b]c[/color][color=#59e1b]c[/color][color=#59deb]c[/color][color=#59dbb]c[/color][color=#59d8b]c[/color][color=#59d5b]c[/color][color=#59d2b]c[/color][color=#59cfb]c[/color][color=#59ccb]c[/color][color=#59c9b]c[/color][color=#59c6b]c[/color][color=#59c3b]c[/color][color=#59c0b]c[/color][color=#59bdb]c[/color][color=#59bab]c[/color][color=#59b7b]c[/color][color=#59b4b]c[/color][color=#59b1b]c[/color][color=#59aeb]c[/color][color=#59abb]c[/color][color=#59a8b]c[/color][color=#59a5b]c[/color]
Jason_xiao1314 2010-12-31
  • 打赏
  • 举报
回复
3楼的对
luyuwei2008 2010-12-31
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 wuyq11 的回复:]
array.sort
list.Sort(delegate(double a,double b) {...
from q in arr orderby q select q
[/Quote]
正解!!
别递烟哥不会 2010-12-31
  • 打赏
  • 举报
回复
Array不是可以自己排序的吗··
IT0329 2010-12-31
  • 打赏
  • 举报
回复
laowang134 2010-12-31
  • 打赏
  • 举报
回复

static void Main(string[] args)
{
string[] temp={"999|aa","","","88|bb","77|ee"};
for(int i=0;i<temp.Length;i++)
{
if (temp[i] != "")
{
string str = temp[i].Split('|')[0];
Console.Write(str+" ");
}
}
}
laowang134 2010-12-31
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 dys_198102 的回复:]
我数组。temp_=["999|aa",,"88|bb",,,"77|ee']
for(int i=0;i<temp_.length;i++)
{
if(temp_[i]!="")//为什么这里不起作用。。。高人指点
str=temp[i].split('|')[0];//未将对象引用设置到对象的实例}
[/Quote]
for(int i=0;i<temp_.length;i++)
{
if(temp_[i]!="")//怎么不起作用?
string str=temp[i].split('|')[0];}//此处必须声明变量str
wuyq11 2010-12-30
  • 打赏
  • 举报
回复
array.sort
list.Sort(delegate(double a,double b) {...
from q in arr orderby q select q
dys_198102 2010-12-30
  • 打赏
  • 举报
回复
我数组。temp_=["999|aa",,"88|bb",,,"77|ee']
for(int i=0;i<temp_.length;i++)
{
if(temp_[i]!="")//为什么这里不起作用。。。高人指点
str=temp[i].split('|')[0];//未将对象引用设置到对象的实例
}
dai821 2010-12-30
  • 打赏
  • 举报
回复

double[] TempArr = { 999, 233, 100, 23.5, 342, 9854, 3.5 };
for (int i = 0; i < TempArr.Length; i++)
{
for (int j = i; j < TempArr.Length; j++)
{
if (TempArr[i] < TempArr[j])
{
double tempItem = TempArr[i];
TempArr[i] = TempArr[j];
TempArr[j] = tempItem ;
}
}
Console.Write(TempArr[i]+" ");
}

这是冒泡,数组自带的排序也不错,效率最高,冒泡是基础!最简单,实现容易效率很低.

极地_雪狼 2010-12-30
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 flyerwing 的回复:]
引用 4 楼 cpp2017 的回复:
改一句就可:
double[] Temp_ = new double[] { 999, 233, 100, 23.5, 342, 9854, 3.5 };

temp.sort();
一起OK了.
[/Quote]
q107770540 2010-12-30
  • 打赏
  • 举报
回复

void Main()
{
//linq
double[] Temp_=new double[]{999,233,100,23.5,342,9854,3.5};
Console.WriteLine("排序前:****************");
Temp_.ToList().ForEach(t=>Console.WriteLine(t));
Console.WriteLine("排序后:****************");
Temp_=Temp_.OrderByDescending(t=>t).ToArray();
Temp_.ToList().ForEach(t=>Console.WriteLine(t));
/*
排序前:****************
999
233
100
23.5
342
9854
3.5
排序后:****************
9854
999
342
233
100
23.5
3.5

*/
}

hewengao401 2010-12-30
  • 打赏
  • 举报
回复
数组有自带排序方法,我看楼主写的貌似是冒泡!
jiaweihan_001 2010-12-30
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 flyerwing 的回复:]
引用 4 楼 cpp2017 的回复:
改一句就可:
double[] Temp_ = new double[] { 999, 233, 100, 23.5, 342, 9854, 3.5 };

temp.sort();
一起OK了.
[/Quote]
就这么简单?
flyerwing 2010-12-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 cpp2017 的回复:]
改一句就可:
double[] Temp_ = new double[] { 999, 233, 100, 23.5, 342, 9854, 3.5 };
[/Quote]
temp.sort();
一起OK了.
hudelan 2010-12-30
  • 打赏
  • 举报
回复
冒泡法排序
TimZhuFaith 2010-12-30
  • 打赏
  • 举报
回复
if (Temp_[j-1] < Temp_[j])
{
double temp = Temp_[j-1];
Temp_[j-1] = Temp_[j];
Temp_[j] = temp;
sprc_lcl 2010-12-30
  • 打赏
  • 举报
回复
double[] Temp_ = new double[] { 999, 233, 100, 23.5, 342, 9854, 3.5 };
//降序排
Array.Sort<double>(Temp_, (d1, d2) => d2.CompareTo(d1));

有什么不对吗?
laowang134 2010-12-30
  • 打赏
  • 举报
回复

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
double[] Temp = { 999, 233, 100, 23.5, 342, 9854, 3.5 };
for (int i = 0; i < Temp.Length; i++)
{
for (int j = i; j < Temp.Length; j++)
{
if (Temp[i] < Temp[j])
{
double temp = Temp[i];
Temp[i] = Temp[j];
Temp[j] = temp;
}
}
Console.Write(Temp[i]+" ");
}
}
}
}

dys_198102 2010-12-30
  • 打赏
  • 举报
回复
我的结果要的是重新排序
加载更多回复(4)

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧