相关文章推荐
打篮球的啄木鸟  ·  Blind ...·  1 月前    · 
冷静的帽子  ·  SQL ...·  6 月前    · 
无邪的仙人球  ·  ios 卡片缩放滑动 ...·  1 年前    · 
A, B, C同为向量, C = A ./ B; 要求找出C中前100个(向量元素足够多)最大或最小的元素。
我的做法是:将C排序(升序或降序),返回索引: C_index = sort(C);
得到结果:Result = C( C_index(1:100) );
问题是:A/B中都有为0的元素,和NaN的元素,怎样能在Result中去除这些元素,得到前100个有含义的数值元素(比如价格),但又不改变A,B中的元素索引值呢?
感谢回答!
...收起
要找最大的元素的时候,可以将对应的数改为-inf,那么这些数肯定排在最小 要找最小的元素的时候,可以将对应的数给为inf,那么这些数肯定排在最大 数据足够多的时候,前100个数肯定就没有它们的身影 例如在C中忽略nan,找前100个最大的数 D(isnan(D))=-inf; sD=sort(D,'descend'); %降序排序 Result =sD(1:100); 不用用到索引 要忽略某些值,只要让那些等于
...全文