`
lindexi-gd
  • 浏览: 140224 次
社区版块
存档分类
最新评论

不修改原数组,获得数组每个元素是数组的第几大

 
阅读更多

最近有个小小的想法,和题目一样,我有一个数组,这个数组很大,我不能修改原数组,也不能拷贝,我要得到一个数组,对应这个数组每个元素是这个数组的第几大。

做法其实简单,我们使用游标,在我们的原数组a,建一个大小和他一样的int,b。

然后b的值就是a的下标

for i=0 to a.Count
    b[i]=i;

然后我们开始做排序,首先b的排序是

 Compare(a[b1],a[b2])

然后我们就b的下标数组,顺序就是a所在元素下标,元素顺序。

如果我们有a 2 6 5 3 7

那么开始b 0 1 2 3 4

然后排序

得到 b 4 1 2 3 0

那么第0是最小,我们可以加一个大小和b一样c

 for i=0 to a.Count
     c[b[i]]=i;

最后c,开始c[4]=0
c[1]=1
c[2]=2
c[3]=3
c[0]=4

c 4 1 2 3 0

对应a的每个元素是数组第几大

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
分享到:
评论

相关推荐

    自定义数组中寻找最大元素位置

    - 使用嵌套循环逐个填充数组中的每个元素。 2. **最大值查找算法**: - 使用双重循环遍历数组的每一个元素。 - 初始时,假设数组的第一个元素是最大值,并将其位置赋值给`index`数组。 - 随后,每次发现更大的...

    实验二 方法的定义、重载;数组的应用 定义一个数组,将序列{0,1,2,3,4}赋值给数组,并写一个方法用来访问数据的每一个元素

    在`printArr`方法中,我们看到使用`for`循环输出数组元素,每个元素之间用逗号分隔,但是最后一个元素后面不加逗号。这是通过在循环中使用条件判断实现的: ```java for (int x = 0; x ; x++) { if (x != arr....

    数组右移-特别是数组元素是整型的

    2. **从数组最后一个元素向前遍历**,将每个元素复制到其左边的一个位置。 3. **将保存的最后一个元素值** 复制到数组的第一个位置。 4. **重复上述过程** 直至完成指定次数的右移。 这种方法的时间复杂度为 O(N^2)...

    从n个数组中取出所有排列组合(Java实现)

    对于数组排列组合问题,我们可以设计一个递归函数,从每个数组的第一个元素开始,依次尝试将每个元素放入结果数组,并递归处理剩余的元素和数组。 以下是一个简单的Java实现思路: 1. 定义一个递归函数,接收当前...

    Labview应用技术 使用数组函数寻找数组中负数个数(拓展).docx

    同时,为了熟悉和掌握各种数组函数,你可以通过LabVIEW的帮助文档(按Ctrl+H快捷键)查看每个函数的详细说明和示例。 在实训过程中,还可以尝试拓展这个任务,例如: 1. 实现动态计算:当用户修改数组时,立即更新...

    2.编写一个函数print, 打印一个学生的成绩数组, 该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用p

    2.编写一个函数print, 打印一个学生的成绩数组, 该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。 3.有10个学生,每个学生的数据包括学号、姓名、3...

    5-Java数组与方法

    每个数据项都有一个唯一的索引,从0开始,到数组长度减1。例如,一个整型数组int[] numbers可以存储一系列的整数,如numbers[0], numbers[1], numbers[2]等。数组的长度在创建时必须指定,且一旦定义后不可改变,这...

    Autoit从数组中删除指定的元素.rar

    可以使用`For`循环遍历数组,检查每个元素的值,如: ```autoit For $i = 1 To UBound($aArray) If $aArray[$i] = "" Then ; 找到后进行标记,比如设置索引变量 $deleteIndex = $i ExitFor EndIf Next ``` ...

    C#代码之输出与数组的遍历与存取

    数组是C#中存储一系列相同类型数据的容器,它具有固定的大小,每个元素可以通过索引进行访问。数组的遍历指的是按照一定的顺序访问数组中的每一个元素。数组的存取则是指读取或修改数组中的元素。 #### 数组的声明...

    labview删除数组中某一元素

    在循环中,检查每个元素并构建新数组,跳过要删除的元素。 6. **优化性能**:如果你需要频繁进行这样的操作,考虑使用“Dynamic Array”或“Array Indexing”节点,它们可以更高效地处理数组操作,但需要更高级的...

    易语言快速判断数组中的数值

    数组由一个或多个元素组成,每个元素都有自己的索引,用于访问和操作这些元素。数组的快速判断通常涉及到遍历、比较和索引操作。 1. **数组定义**:在易语言中,定义数组的基本语法是`数组名称 数组类型[元素个数]`...

    数组最大值最小值_数组最大值最小值_最小值_

    数组是由同一类型的数据元素按照特定顺序排列的集合,通过索引(通常从0开始)可以访问每个元素。在Python中,数组一般用list表示;在Java中,使用数组类如int[];而在C++中,我们使用数组声明,如int arr[20]。 要...

    VBA二维数组重定义

    每个元素可以通过`(行索引, 列索引)`的方式访问,如`arr(1, 1)`表示第一行第一列的元素。 二维数组的重定义通常发生在以下几种情况: 1. **尺寸调整**:如果初始声明的数组大小不足以容纳新数据,或者我们预估的...

    Javascript中二维数组的遍历

    二维数组,即多维数组的特殊情况,是指每个元素也是一个数组的数组。这种数据结构在实际应用中非常常见,例如,在表单处理、数据分析等领域。今天,我们将通过一个具体的示例,来详细介绍如何遍历 Javascript 中的二...

    求一个数组中第K个最大值和最小值

    标题中的“求一个数组中第K个最大值和最小值”是一个常见的算法问题,这个问题在计算机科学和编程领域中有着广泛的应用。它涉及到数组处理、排序以及数据查找等基本概念。接下来,我们将深入探讨这个问题的解决方案...

    几个Excel vba示例文件. 包括行列转置,表格数据到数组,一维数组转二维数组,单列转多列等

    例如,你可以创建一个新数组,然后遍历原数组的每个元素,将其按转置顺序放入新数组中。这样,原行将成为新数组的列,原列将成为新数组的行。 2. **表格数据到数组**: 将Excel工作表的区域转换为数组,可以让VBA...

    从C#中的数组中删除指定元素的几种方法,超简单

    对于扩展问题——如果数组中有重复元素,而只需要删除一个,可以修改第五种方法,找到目标元素的第一个出现位置,然后使用RemoveAt方法删除。例如: ```csharp List&lt;int&gt; nums = new List&lt;int&gt; { 1, 3, 4, 5, 4, 2 ...

    数组的几种排序方法

    1. **遍历**:从数组的第一个元素开始,逐个比较相邻的两个元素。 2. **交换**:如果前一个元素大于后一个元素,就交换它们的位置。 3. **重复**:以上步骤会使得最大的元素“冒”到数组末尾。然后对剩下的元素重复...

    数组参数学习内容

    总之,理解和掌握数组参数是每个程序员的基础技能。无论是在算法设计、数据处理还是系统编程中,熟练运用数组参数都能提高代码的可读性和效率。通过深入学习和实践,我们可以更好地应对各种编程挑战,提升编程能力。

    数组从小到大排列 方法

    内层循环负责将每个元素与其前一个元素进行比较,并进行必要的交换操作。如果当前元素小于前一个元素,则交换它们的位置,使得当前元素向左移动。这个过程一直持续到当前元素不再小于其前一个元素为止。 #### 4.3 ...

Global site tag (gtag.js) - Google Analytics