728x90
728x170
선형 리스트(Linear List) 처리 프로그램
## 함수 선언 부분 ##
def add_data(friend):
katok.append(None)
kLen = len(katok)
katok[kLen - 1] = friend
# 선형 리스트에 데이터를 삽입하는 함수
def insert_data(position, friend):
if position < 0 or position > len(katok):
print("데이터를 삽입할 범위를 벗어났습니다.")
return
katok.append(None) # 빈칸 추가
kLen = len(katok) # 배열의 현재 크기
for i in range(kLen - 1, position, -1):
katok[i] = katok[i - 1]
katok[i - 1] = None
katok[position] = friend # 지정한 위치에 친구 추가
# 선형 리스트에서 데이터를 삭제하는 함수
def delete_data(position):
if position < 0 or position > len(katok):
print("데이터를 삭제할 범위를 벗어났습니다.")
return
kLen = len(katok)
katok[position] = None # 데이터 삭제
for i in range(position + 1, kLen):
katok[i - 1] = katok[i]
katok[i] = None # 배열의 맨 마지막 위치 삭제
del(katok[kLen - 1])
## 전역 변수 선언 부분 ##
katok = []
select = -1 # 1: 추가, 2: 삽입, 3: 삭제, 4: 종료
## 메인 코드 부분 ##
if __name__ == "__main__":
while (select != 4):
select = int(input("선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> "))
if (select == 1):
data = input("추가할 데이터--> ")
add_data(data)
print(katok)
elif (select == 2):
pos = int(input("삽입할 위치--> "))
data = input("추가할 데이터--> ")
insert_data(pos, data)
print(katok)
elif (select == 3):
pos = int(input("삭제할 위치--> "))
delete_data(pos)
print(katok)
elif (select == 4):
print(katok)
exit
else:
print("1~4 중 하나를 입력하세요.")
continue
더보기
선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 1 추가할 데이터--> 다현 ['다현'] 선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 1 추가할 데이터--> 정연 ['다현', '정연'] 선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 1 추가할 데이터--> 쯔위 ['다현', '정연', '쯔위'] 선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 2 삽입할 위치--> 1 추가할 데이터--> 하나 ['다현', '하나', '정연', '쯔위'] 선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 2 삽입할 위치--> 0 추가할 데이터--> 문별 ['문별', '다현', '하나', '정연', '쯔위'] 선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 3 삭제할 위치--> 3 ['문별', '다현', '하나', '쯔위'] 선택하세요(1: 추가, 2: 삽입, 3: 삭제, 4: 종료)--> 4 ['문별', '다현', '하나', '쯔위'] |
728x90
그리드형(광고전용)
'Source Code > Python' 카테고리의 다른 글
[Python] 회문/팰린드롬(Palindrome) 판단하기 (0) | 2022.06.16 |
---|---|
[Python] 괄호 매칭 검사 프로그램 (0) | 2022.05.30 |
[Python] 단순 연결 리스트(Singly Linked List) 프로그램 (0) | 2022.04.02 |
[Python] 다항식(Polynomial) 선형 리스트 표현과 계산 프로그램 (0) | 2022.03.26 |
[Python] 파일 입출력 예제 (0) | 2021.08.07 |
[Python] matplotlib 라이브러리를 이용하여 그래프 그리기 (0) | 2020.03.24 |
[Python] BMI 계산기 (0) | 2019.05.02 |
[Python] 화씨온도(℉)를 섭씨온도(℃)로 변환하기 (0) | 2019.04.23 |