首页 > 编程知识 正文

函数和指针实现一维数组的排序,java二维数组按某一列排序

时间:2023-05-04 13:58:43 阅读:34758 作者:3250

必须在一行中按升序排列二维数组,如果该行相同,则按另一行的升序排列。

敬畏的万宝路:定义班级

以下是棒的加工问题,l是棒的长度,w是棒的重量,定义一个棒类,保存棒的长度和重量。

classwoodimplementscomparablewood { intl; int w; int judge=0; 公共wood (intl,int w ) {this.l=l; this.w=w; //比较方法公共int compare to (wood wood ) if ) L==wood.L ) return (wwood.w )? 1:-1; }返回(lwood.l )? 1:-1; } scanner in=new scanner (system.in ); int n=in.nextInt (; //共n棵树Wood[] woods=new Wood[n]; for(intj=0; j n; j ) {woods[j]=newwood(in.nextInt )、in.nextint ); }Arrays.sort(woods ); 对woods调用Arrays.sort )即可完成排序。

方法Collection.sort () )。

Collections.sort ()使用此方法实际上是重写Comparator接口的compare方法以实现排序: //接收参数list集合。 Comparator接口T:list的元素类型Collections.sort ) ) list是new ComparatorT () overridepublicintcompare ) tO1, T o2 ) )//比较两个数的大小,返回1交换顺序,返回-1则int i=o1.get)- o2.get不交换//i0,返回1则降序,返回-1则升序if(I0 ) }返回- 1; (); Arrays.sort(a,new Comparatorint[] () ) overridepublicintcompare(int ) O1,int ) O2 ) ) if ) O1(0)=) O2 ) retet }; ); //其中o1[1]-o2[1]表示对于第二个元素经过行的升序排序,如果是o2[1]-o1[1],则表示为降序。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。