[Python] 정렬 함수(sort, sorted)

SangJin Ham·2023년 6월 28일
0

Python

목록 보기
1/1
post-thumbnail

코딩테스트 역량 강화 교육(거점형 특화 프로그램)이라는 프로그램에 참여해 공부한 내용입니다.


list.sort()

nums 배열(리스트) 자체를 정렬하고, 반환값은 None이다.

  • 오름차순 : nums.sort()
  • 내림차순 : nums.sort(reverse = True)

좌표 정렬하기

  1. [x, y]에서 x값에 의한 오름차순 정렬
def solution(nums):
nums.sort(key = lambda v : (v[0])) 
return nums;
print(solution([[2, 3], [1, 4], [3, 1], [1, 2]]));
  1. [x, y]에서 y값에 의한 오름차순 정렬
def solution(nums):
nums.sort(key = lambda v : (v[1])) 
return nums;
print(solution([[2, 3], [1, 4], [3, 1], [1, 2]]));
  1. [x, y]에서 x값에 의한 내림차순 정렬
def solution(nums):
nums.sort(key = lambda v : (-v[0])) 
return nums;
print(solution([[2, 3], [1, 4], [3, 1], [1, 2]]));
  1. [x, y]에서 y값에 의한 오름차순을 하되 y값이 같은 경우는 x값에 따라 오름차순
def solution(nums):
nums.sort(key = lambda v : (v[1], v[0])) return nums;
print(solution([[2, 3], [1, 4], [3, 1], [1, 1]]));

sorted(target)

nums 배열 자체는 바꾸지 않고 정렬된 새로운 배열을 반환
인자로는 배열, 튜플, 문자열 등 순회가 가능한(iterable) 객체는 모두 가능

  • 오름차순 : sorted(nums)
nums = [3, 2, 5, 1, 4] 
print(sorted(nums)) #[1, 2, 3, 4, 5] 
print(nums) #[3, 2, 5, 1, 4]
print(sorted('study')) #['d', 's', 't', 'u', 'y'] 
print(''.join(sorted('study'))) #'dituy'
  • 내림차순 : sorted(nums, reverse=True)
nums = [3, 2, 5, 1, 4]
print(sorted(nums, reverse=True)) #[5, 4, 3, 2, 1] 
print(nums) #[3, 2, 5, 1, 4]
profile
끄적끄적

0개의 댓글