永发信息网

C# Int数组有无序的正负数,只考虑获取正数,并且正数在前,负数在后,正数相对顺序不便,负数无所谓

答案:2  悬赏:0  手机版
解决时间 2021-04-03 23:14
C# Int数组有无序的正负数,只考虑获取正数,并且正数在前,负数在后,正数相对顺序不便,负数无所谓
最佳答案
int[] list = { 1, -2, -1, -3, 4, 5, 6, -7, 8, 9};
int[] newlist = new int[list.Length];
int index = 0;
for (int i = 0; i < list.Length; i++)
{
if (list[i] > 0)
{
newlist[index] = list[i];
index++;
}
}
for (int i = 0; i < list.Length; i++)
{
if (list[i] < 0)
{
newlist[index] = list[i];
index++;
}
}
for (int i = 0; i < newlist.Length; i++)
{
Console.Write("{0,4}", newlist[i]);
}
Console.Read();追问不要借助其他新的数组。
怎么减少一次循环?

追答    //那就这样吧,不过要多定义一个整数index 
        int[] list = { 1, -2, -1, -3, 4, 5, 6, -7, 8, 9 };
            int index = 0;
            for (int i = 0; i < list.Length; i++)
           {
               if (list[i] > 0)
               {
                    if (index != i)
                    {
                        list[index] = list[i] + list[index];
                        list[i] = list[index] - list[i];
                        list[index] = list[index] - list[i];
                    }
                    index++;
                }
            }
            for (int i = 0; i < list.Length; i++)
            {
                Console.Write("{0,4}", list[i]);
            }
全部回答
            int[] a = { 1, -2, -1, -3, 4, 5, 6, -7, 8, 9 };
            int[] p = a.Where(i => i > 0).ToArray();
            int[] n = a.Where(j => j < 0).ToArray();
            Array.Copy(p, a, p.Length);
            Array.Copy(n, 0, a, p.Length, n.Length);
            //int[] a 中存放着结果
 追问不要借助其他新的数组。

不过还是谢谢你。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
吊扇的调速开关能装电烤炉上控制大小吗?
np的书被禁了吗?潇湘书院的好多np不见了。
枸杞和绿茶泡水有啥好处
干果店感谢顾客的句子,幽默的感谢他把工作也
阅读下面的材料,根据要求作文。 弟子对大师
破壁机缺点漏了怎么办?
十个女仔、九个玉彻。求解释玉彻是什么意思?
老公姓李,我姓鞠,忙帮起个四个字的男孩或者
在无锡市搜索无锡皮革城在哪个区
CAD总图没有标注比例,怎么知道比例是多少
单选题Theyaregoingtohavetheserviceman_
卧室里不能摆放过多植物过夜,这是因为A.需要
适合多人朗诵的温情诗歌
居住证需要年审吗?
氨、tvoc、甲醛、苯检测吸收液和显色液分别为
推荐资讯
线切割机床丝筒换向时飞车是什么原因
发动机机油正常,但机油压力过低的故障原因是
如何在PPT中画出的矩形或菱形中添加文字?
右上角带个榜字,还可以给主播发红包是什么直
下列关于第二次世界大战影响的叙述,不正确的
逆战金箍棒和审判哪个好?
商场背景音乐
如果每年存银行一万,十年后是多少钱
额头不平整怎么办,不想掩饰
军统八大金刚
拜师学诗词
我不能很快与你通话英文怎么说 I couldn‘t__
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?