静态初始化一个二维数组并将二维数组排序并输出

基本思想:将二维数组存入到一个新的一维数组中,将一维数组排序后,再加以格式控制输出

class work03
{
public static void main(String[] args)
{
int a[][]={ {11,15,32,21},{2,3},{4,6,5}};
int length=0;
int k=0;
for(int i=0;i<a.length;i++){
for(int j=0;j<a[i].length;j++){
length++;//求二维数组元素个数
}
k++;//求二维数组中有多少个一维数组
}
int a1[]=new int[length];
length=0;
int len[]=new int[k];
for(int i=0;i<a.length;i++){
len[i]=a[i].length;
for(int j=0;j<a[i].length;j++){
a1[length]=a[i][j];
length++;
}
}//将值全部赋给一维数组

for(int i=0;i<length-1;i++){
for(int j=0;j<length-1;j++){
if(a1[j]>a1[j+1]){
a1[j]^=a1[j+1];
a1[j+1]^=a1[j];
a1[j]^=a1[j+1];
}
}
} //一维数组冒泡排序
length=0;

System.out.print("{");
for(int i=0;i<k;i++){//格式控制输出
System.out.print("{");
for(int j=0;j<len[i];j++){
if(j!=len[i]-1){
System.out.print(a1[length]+",");
}
else{
System.out.print(a1[length]+"}");
}
length++;
}
if(i!=k-1){
System.out.print(",");
}
}
System.out.print("}");

}
}

时间: 2024-10-13 23:25:08

静态初始化一个二维数组并将二维数组排序并输出的相关文章

C++二维数组讲解、二维数组的声明和初始化

我们知道,一维空间是一条线,数学中用一条数轴来表达:二维空间是一个平面,数学中用平面坐标系来表达.那么二维数组又是什么样的呢? 线与面 我们用一个下标来描述一维数组中的某个元素,就好像在用数描述一条线上的点.而所有的数据都是存储在一条线上.如果我们采用两个下标,就能形成一个平面,犹如一张表格,有行有列,所有的数据就能够存放到表格里. 我们把二维数组的两个下标分别称为行下标和列下标,在前面的是行下标,在后面的是列下标. 那么什么时候要用二维数组呢?一般有两种情况,一种是描述一个二维的事物.比如用1

二维数组指针及二维动态数组的分配问题

在我以前的文章中都有讲过关于数组指针及指针数组的相关问题,但是讲得不够深入,我后来后了别人写的博客后觉得人家的确实写得好, 也学到了不少东西,对以前的问题有深的领悟了,于是准备结合这些博客和文章再稍微深入一点讲讲这些问题.这些指针的问题是C语言中的基础与关键 而且一旦出现这些问题,不太好找bug的来源,有时候不得不借助反汇编. 参考文章: http://c.biancheng.net/cpp/html/476.html       C语言指针数组和数组指针 http://blog.csdn.ne

PHP二维数组(或任意维数组)转换成一维数组的方法汇总

目录 1 array_reduce函数法 2 array_walk_recursive函数法 3 array_map函数法 假设有下面一个二维数组: $user = array( '0' => array('id' => 100, 'username' => 'a1'), '1' => array('id' => 101, 'username' => 'a2'), '2' => array('id' => 102, 'username' => 'a3'

PHP二维数组转换成一维数组,一个变量多个二维数组转换成一维数组,PHP二维数组(或任意维数组)转换成一维数组的方法汇总,array_reduce(); array_walk_recursive(); array_map();

方法汇总: 1. array_reduce函数法 //用array_reduce()函数是较为快捷的方法: $result = array_reduce($user, function ($result, $value) { return array_merge($result, array_values($value)); }, array()) 2. array_walk_recursive函数法 //用array_walk_recursive()函数就非常灵活,可以把任意维度的数组转换成一

PHP 二维数组合并(二)

例如有如下数组: $arr = array( 0=>array( 'product'=>'120', 'type'=>0 ), 1=>array( 'product'=>'120', 'type'=>0 ), 2=>array( 'product'=>'120', 'type'=>1 ), 3=>array( 'product'=>'121', 'type'=>0 ), 4=>array( 'product'=>'121'

用二维数组存一组学生的成绩,输出总成绩的是谁和分数,输出语文第一名是的谁和成绩

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> //一组学生的成绩,输出总成绩的是谁和分数,输出语文第一名是的谁和成绩 var score = [ { name: '小明', chinese: 128, math: 127, engl

7.Java二维数组的声明、初始化和引用

二维数组的声明.初始化和引用与一维数组相似,这里不再详讲. 二维数组的定义 type arrayName[ ][ ]; type [ ][ ]arrayName; 只是形式上的差别,大家可以根据自己的习惯来选择. 二维数组的初始化 1.静态初始化     int intArray[ ][ ]={{1,2},{2,3},{3,4,5}}; Java语言中,由于把二维数组看作是数组的数组,数组空间不是连续分配的,所以不要求二维数组每一维的大小相同. 2.动态初始化 1) 直接为每一维分配空间,格式如

&lt;24&gt;【掌握】二维数组指针定义、初始化+

[掌握]二维数组指针定义.初始化 数组指针: 定义一个指针变量,让这个指针变量指向一维数组的元素 二维数组指针 行指针,用来指向二维数组的每一行,存放的是行的首地址 定义格式: 数据类型 (*行指针变量名)[数组第二维的长度]; 二维数组指针的初始化 int a[2][3]; int b[2][2]; float f1[4][4]; //假设我要定义一个指向数组a的一个行指针 // a = &a[0] = &a[0][0] = a[0] int (*p)[3] = a; 二维数组指针的使用

JavaScript 通过循环按执行顺序,做一个5&#215;5的二维数组,赋1到25的自然数,然后输出该数组的左下半三角。

通过循环按执行顺序,做一个5×5的二维数组,赋1到25的自然数,然后输出该数组的左下半三角.试编程. 基本思路: 1 var container_arr = []; 2 // 建立五个数组 3 for(var i = 0,count = 0 ; i < 5; i++){ 4 var arr = []; 5 for(var k = 0 ; k < 5 ; k ++){ 6 // 这个内层循环会执行 5 * 5 次 7 count ++; //count会从1 ~ 25 8 arr.push(co