1338 6

[问答] 问一个排序问题,把C++的思想弄过来怎么不行啊 [推广有奖]

  • 0关注
  • 0粉丝

本科生

99%

还不是VIP/贵宾

-

威望
0
论坛币
92 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
186 点
帖子
61
精华
0
在线时间
51 小时
注册时间
2013-4-22
最后登录
2015-8-3

楼主
红与黑的铭记 发表于 2013-11-3 18:13:40 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
f<-function(x){
n=length(x)
for(i in 1:n){
for(j in (i+1):n){
if(x[j]<x[i])
{ z=x[i];x[i]=x[j];x[j]=z}
                 }
             }
x
}
> x=c(1,3,4,3,2,6)
> f(x)
错误于if (x[j] < x[i]) { : 需要TRUE/FALSE值的地方不可以用缺少值
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:LSE TRU Rue

沙发
lww1993 发表于 2013-11-3 22:23:56
i=6的时候,j=7,x[j]=NULL,出错了。
应改为for(i in 1:(n-1))

藤椅
ltx5151 发表于 2013-11-4 10:05:44
哈哈,第一,这样的算法不叫C++思想,复制交换在没有面向对象思想时就有了,那时候连C还没有呢,不要说C++,不要乱扣帽子呦。
第二,不是R不行,是lz程序写的不行。你的内层循环赋值出窍了。

板凳
yywan0913 在职认证  发表于 2013-11-4 10:06:34
同意楼上,不过不干嘛直接sort(x)
是什么给了你自信

报纸
红与黑的铭记 发表于 2013-11-4 19:46:22
lww1993 发表于 2013-11-3 22:23
i=6的时候,j=7,x[j]=NULL,出错了。
应改为for(i in 1:(n-1))
谢谢了啊

地板
nuomin 发表于 2013-11-5 11:08:20
ltx5151 发表于 2013-11-4 10:05
哈哈,第一,这样的算法不叫C++思想,复制交换在没有面向对象思想时就有了,那时候连C还没有呢,不要说C++, ...
循环赋值出窍了
-------------------------
很形象

7
lww1993 发表于 2013-11-5 11:11:09
红与黑的铭记 发表于 2013-11-4 19:46
谢谢了啊
不客气~

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-26 23:32