면접 문제: 성적 순위 (레 온 84 점)...

1399 단어
최근 면접 에서 알고리즘 문 제 를 만 났 습 니 다. 앞 에 떨 어 지면 js 와 관련 된 것 을 알 수 있 기 때문에 다음 문 제 를 받 으 면 배열 방법 으로 정렬 하 는 것 이 생각 났 습 니 다.제목 은 어렵 지 않 지만 동화 에 필요 한 것 이 있 을 거 예요. 그 러 니까 공유 해 주세요.
제목: 왕 선생님 은 학생 들 의 시험 성적 을 정리 해 야 합 니 다. 점수 가 낮은 것 부터 높 은 것 까지 순서대로 왕 선생님 의 순 서 를 도와 주세요.
시험 성적 을 정렬 하 는 것 은 당연히 점 수 를 고정 시 켜 야 한다. 그러나 점수 와 이름 도 일일이 대응 하 므 로 무시 할 수 없다.코드 를 바로 붙 입 니 다:
        var arr=[{name:"Leon",score:"84 "},
                {name:"Carrie",score:"94 "},
                {name:"Adan",score:"82 "},
                {name:"Elaina",score:"77 "},
                {name:"Json",score:"99 "}
        ]
        arr.sort(function CompareFunction(a,b){
            if(a.score

방법 은 js 배열 sort 방법 에서 사용자 정의 정렬 입 니 다.간략하게 소개 하 겠 습 니 다: sort 방법 에는 비교 함수 라 는 매개 변수 가 있 습 니 다.compare Function () 을 가리 키 면 배열 은 이 함수 의 반환 값 에 따라 정렬 됩 니 다.a 와 b 는 비교 할 요소 입 니 다. 만약 에 마이너스 로 돌아 가면 a 는 b 앞 에 있 습 니 다.반환 값 이 0 이면 상대 적 인 위치 가 변 하지 않 습 니 다.반환 값 이 양수 라면 a 는 b 뒤에 있 습 니 다.예 를 들 어 사용자 정의 오름차 순 배열: a 가 b 보다 작 으 면 정렬 된 배열 에서 a 가 b 보다 먼저 나타 나 면 0 보다 작은 값 을 되 돌려 줍 니 다.a 가 b 와 같 으 면 정렬 된 배열 에서 a, b 가 앞 뒤 를 구분 하지 않 으 면 0 으로 돌아 갑 니 다.만약 에 a 가 b 보다 크 면 정렬 된 배열 에서 a 가 b 뒤에 나타 나 면 0 이상 의 값 을 되 돌려 줍 니 다.
낙하 당시 에는 손 으로 쓴 코드 로 이미 컴퓨터 에 올 라 가 검 증 했 습 니 다.그래도 직접 두 드 려 보 세 요.

좋은 웹페이지 즐겨찾기