deda
Deda의 데이터 디자인
deda
전체 방문자
오늘
어제
  • 분류 전체보기 (121)
    • Python (27)
      • Python 기초 (17)
      • Python 데이터분석 (10)
    • SQL (9)
    • Coding test (54)
      • Python 기초문제 (45)
      • LeetCode (9)
    • BigData (2)
    • ZeroBase (3)
    • UX (0)
    • Business Review (1)
    • 통계 & 수학 (17)
      • 통계학 (14)
      • 수학 (3)
    • 스터디 (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 군수열
  • 미니콘다
  • 릿코드
  • 팩토리얼
  • 파이썬
  • 마이데이터
  • 계차수열
  • pandas
  • 데이터사이언티스트
  • 소인수분해
  • 제로베이스
  • 통계
  • 데이터분석가
  • 등차수열
  • 빅데이터
  • 부트캠프
  • 함수
  • 최소공배수
  • 계산기
  • 데이터분석
  • 데이터엔지니어
  • 모듈
  • matplotlib
  • SQL
  • 기초수학
  • 프로그래밍
  • 네카라쿠배
  • BMI
  • 등비수열
  • 코딩

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
deda

Deda의 데이터 디자인

[정렬] 1부터 100사이 난수 정렬(삽입 정렬)
Coding test/Python 기초문제

[정렬] 1부터 100사이 난수 정렬(삽입 정렬)

2022. 5. 12. 18:26

🔍  문제

1부터 100까지 난수 10개를 뽑아 정렬하고 최대값과 최소값을 출력(삽입 정렬 사용)

 

🗝 사용함수

 

 

🖥  실행

1) 클래스

class SortNum:

    def __init__(self, arr, asc=True):
        self.array = arr
        self.isAsc = asc


    def isAscending(self, flag):
        self.isAsc = flag

    def setSort(self):

        for i1 in range(1, len(self.array)):
            i2 = i1 -1
            cNum = self.array[i1]

            if self.isAsc:

                while self.array[i2] > cNum and i2 >= 0:
                    self.array[i2+1] = self.array[i2]
                    i2 -= 1

            else:
                while self.array[i2] < cNum and i2 >= 0:
                    self.array[i2+1] = self.array[i2]
                    i2 -= 1

            self.array[i2+1] = cNum

    def getSort(self):
        return self.array

    def getMin(self):
        if self.isAsc:
            return self.array[0]
        else:
            return self.array[-1]

    def getMax(self):
        if self.isAsc:
            return self.array[-1]
        else:
            return self.array[0]

 

2) 실행파일

import random as rd
import sortMod as sm

nums = rd.sample(range(1,100),10)

print(nums)

sn = sm.SortNum(nums)
sn.setSort()
result = sn.getSort()
print(result)


sn.isAscending(False)
sn.setSort()
result_des = sn.getSort()
print(result_des)

min = sn.getMin()
max = sn.getMax()

print(f'min : {min}, max : {max}')

 

📝 결과물

 

'Coding test > Python 기초문제' 카테고리의 다른 글

[파이썬 기초] 아스키 코드 최대값 찾기  (0) 2022.05.13
[정렬] 1부터 100사이 난수 정렬(선택 정렬)  (0) 2022.05.12
[정렬] 키순대로 배열  (0) 2022.05.12
[순위] 중간, 기말 점수 격차 확인  (0) 2022.05.07
[딕셔너리] BMI 계산기  (0) 2022.05.04
    'Coding test/Python 기초문제' 카테고리의 다른 글
    • [파이썬 기초] 아스키 코드 최대값 찾기
    • [정렬] 1부터 100사이 난수 정렬(선택 정렬)
    • [정렬] 키순대로 배열
    • [순위] 중간, 기말 점수 격차 확인
    deda
    deda
    데이터 분석 / 파이썬 / UX / 정량리서치

    티스토리툴바