Java 프로그램 설계 2분 찾기 및list 정렬
1831 단어 java 기초 지식
1.2점 찾기
// r>=l
public static int BinarySearch(int[] data,int aim)
{
int l=0,r=data.length-1;
while(r>=l) // !!!
{
int mid=(l+r)/2;
if(aim==data[mid])
return mid;
else if(aim>data[mid])
l=mid+1;
else
r=mid-1;
}
return -1;
}
2. 두 가지list의 실현 방식
// r>=l
public static int BinarySearch(int[] data,int aim)
{
int l=0,r=data.length-1;
while(r>=l) // !!!
{
int mid=(l+r)/2;
if(aim==data[mid])
return mid;
else if(aim>data[mid])
l=mid+1;
else
r=mid-1;
}
return -1;
}
// 방법1: 클래스에서Comparable 인터페이스를 데이터로 정렬하기
class Node implements Comparable{
int data;
int otherdata;
public Node(int data,int otherdata)
{
this.data=data;
this.otherdata=otherdata;
}
@Override
public int compareTo(Node arg0) {
// TODO Auto-generated method stub
if(this.data list=new ArrayList();
list.add(new Node(25,1));
list.add(new Node(52,2));
list.add(new Node(1,3));
list.add(new Node(50,5));
// : data
//Collections.sort(list);
// 메서드2: Collections를 다시 작성합니다.sort 방법으로 Comparator 클래스 사용
// Node Comparable
ArrayList list=new ArrayList();
list.add(new Node(25,1));
list.add(new Node(52,2));
list.add(new Node(1,3));
list.add(new Node(50,5));
Collections.sort(list, new Comparator(){
@Override
public int compare(Node arg0, Node arg1) {
// TODO Auto-generated method stub
if(arg1.data>arg0.data)
return 1;
else if(arg1.data==arg0.data)
return 0;
else
return -1;
}
});
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Java 프로그램 설계 2분 찾기 및list 정렬텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.