프로그래머 코드 면접 안내
9596 단어 프로그래머 코드 면접 안내
하나의 스 택 에 있 는 요소 의 유형 은 정형 입 니 다. 지금 은 이 스 택 을 꼭대기 에서 작은 순서 로 정렬 하려 면 하나의 스 택 만 신청 할 수 있 습 니 다.이 밖 에 새로운 변 수 를 신청 할 수 있 지만 추가 데이터 구 조 를 신청 할 수 없다.어떻게 정렬 을 완성 합 니까?
입력 설명:
첫 번 째 줄 에 N 을 입력 하면 스 택 에 있 는 요소 의 개 수 를 나타 내 고 두 번 째 줄 에 N 개의 정수 aa 를 입력 합 니 다.아 이 는 스 택 에서 스 택 밑 까지 의 각 요 소 를 표시 합 니 다.
출력 설명:
한 줄 을 출력 하면 정렬 된 스 택 에서 스 택 밑 까지 의 각 요 소 를 표시 합 니 다.
1
5
5 8 4 3 6
8 6 5 4 3
해법 1: oj 좀 슬프다
import java.io.*;
import java.util.*;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int len = Integer.parseInt(br.readLine());
String[] ss = br.readLine().trim().split(" ");
Stack<Integer> s = new Stack<>();
for(int i=len-1;i>=0;i--){
s.push(Integer.parseInt(ss[i]));
}
sort(s);
while(!s.isEmpty()){
System.out.print(s.pop()+" ");
}
}
public static void sort(Stack<Integer> s){
Stack<Integer> help = new Stack<>();
while(!s.isEmpty()){
int tmp = s.pop();
while(!help.isEmpty()&&help.peek()<tmp){
s.push(help.pop());
}
help.push(tmp);
}
while(!help.isEmpty()){
s.push(help.pop());
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
피보나치 수열 문제의 귀착과 동태 기획 3제목 설명 설명 입력: 출력 설명: 입력 출력 1 ≤ n ≤ 1 0 18 1\leq n\leq 10^{18} 1≤n≤1018 점차적 공식: F(n) = F(n -3) + F(n -3) F(n) = F(n -1) + ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.