Python - 알고리즘 (선형검색,이진검색)
·
IT/Python
선형검색선형으로 나열되어 있는 데이터를 순차적으로 스캔하면서 원하는 값을 찾는다.datas = [3,2,5,7,9,1,0,8,6,4]print(f'datas: {datas}')print(f'datas length : {len(datas)}')searchData = int(input('찾으려는 숫자 입력 : '))searchResultIdx = -1n = 0while True:if n == len(datas):searchResultIdx = -1breakelif datas[n] == searchData:searchResultIdx = nbreakn += 1print(f'searchResultIdx : {searchResultIdx}')문제풀이 :len(datas)까지 n이 계속 증가하면서 숫자를 찾는데 만..
Python - 자료구조
·
IT/Python
자료구조 개요자료구조는 데이터를 효율적으로 저장하고 관리하기 위한 컴퓨터 과학의 핵심 개념이다. 파이썬에서는 다양한 자료구조를 제공하여 데이터의 추가, 삭제, 접근과 같은 연산을 용이하게 한다.리스트(Lists)리스트는 데이터의 순서가 있는 시퀀스이다.데이터 추가: append(), insert()데이터 삭제: remove(), pop()데이터 접근: 인덱싱, 슬라이싱리스트에 아이템 추가하기append() 함수 사용 예시:my_list = ['홍길동', '박찬호', '이용규', '박승철', '김지은']my_list.append('강호동')print(my_list) # 출력: ['홍길동', '박찬호', '이용규', '박승철', '김지은', ‘강호동']insert() 함수 사용 예시:my_list = ['..
[Python] 동시성 프로그래밍과 병렬성 프로그래밍
·
IT/Python
동시성과 병렬성 프로그래밍 서론 컴퓨터 프로그래밍 세계에서 "동시성(Concurrency)"과 "병렬성(Parallelism)"은 성능 최적화를 위해 언급되는 두가지 개념이다. 동시성 프로그래밍이란? 동시성 프로그래밍은 여러 작업을 동시에 진행하는 것처럼 보이게 하는 기술이다. 실제로는 한 번에 하나의 작업만 처리하면서, 작업들 사이를 빠르게 전환함으로써 여러 작업을 처리하는 것처럼 보인다. 마치 요리를 하면서 전화 통화를 하는 것처럼, 실제로는 한 번에 한 작업에만 집중하지만, 빠르게 작업을 전환하며 여러 일을 처리하는 것처럼 보이게 한다. 동시성은 주로 데이터를 기다리는 작업(I/O 바운드 작업)에 유용하며, 컴퓨터가 네트워크 요청이나 디스크 I/O 작업을 기다리는 동안 다른 작업을 진행할 수 있게 ..
[Python] __name__
·
IT/Python
__name__ 변수란? 파이썬 파일이 어떻게 사용되는지에 따라 다른 값을 가지는 특별한 변수. 이 변수는 크게 두 가지로 나뉨 파일을 직접 실행하는 경우: 파일을 직접 실행하면, name은 'main'이 됨. 즉, 이 파일이 메인 프로그램이라는 뜻. 파일을 다른 파일에서 불러오는 경우(임포트하는 경우): 다른 파일에서 이 파일을 불러와서 사용하면, name은 그 파일의 이름이 된다. 사용 예시 hello.py # hello.py 파일 def say_hello(): print("Hello, world!") if __name__ == "__main__": say_hello() main.py(hello.py를 import하는 파일) import hello # hello.py의 say_hello..