본문 바로가기

분류 전체보기59

프로그래머스 - 이중순위큐,k 번째 수 https://programmers.co.kr/learn/courses/30/lessons/42628 코딩테스트 연습 - 이중우선순위큐 programmers.co.kr import heapq class Double_heap: def __init__(self): self.maxheap = list() self.minheap = list() def push(self, number): heapq.heappush(self.maxheap, -number) heapq.heappush(self.minheap, number) def pop_max(self): if self.maxheap and self.minheap : max_out = -heapq.heappop(self.maxheap) self.minheap.rem.. 2022. 1. 21.
프로그래머스 - 다리를 지나는 트럭, 주식 가격, 더 맵게 https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 programmers.co.kr class Truck : def __init__(self, weight): self.weight = weight self.time =0 def solution(bridge_length, weight, truck_weights): bridge = list() result_queue = [] result_case_number = len(t.. 2022. 1. 19.
X11 Client 설정 (Windows, MacOs, Ubuntu, Visual studio code, VS Code) Windows 1. Xming 설치 2.PuttY 설정 Connection -> SSH -> X11 -> Enable X11 Forwarding 체크 MacOS 1. Xquartz 설치 2. /private/etc/ssh/sshd_config 수정 sudo vi /private/etc/sshd_config # X11Forwarding no -> X11Forwarding yes 로 수정 3. 외부에서 요청한 X11 연결 허용 xhost + Ubuntu 1. /etc/ssh/ssh_config 수정 sudo vim /etc/ssh/ssh_config # FowardX11 no -> ForwardX11 yes 로 수정 후, 저장 (esc, :wq!) Visual Studio Code 1. Remote - ss.. 2021. 8. 24.
파이썬 Python GUI - 그래프 (pyqtgraph, matplotlib) (realtime, 실시간) 파이썬에서 그래프를 표현할 때 많이 사용하는 pyqtgraph, matplotlib 패키지가 있다. 결론부터 말하면 serial port, bluetooth 등의 정보를 실시간으로 모니터링, 시각화 하는 등의 프로그램이라면 pyqtgraph 패키지를 추천하고 정적 또는 화면 프레임수가 초당 10fps 이하의 간단한 프로그램이라면 matplotlib의 animation.FuncAnimation 를 사용할 수 있다. 두 라이브러리의 차이점은 1. 속도. matplotlib은 애초에 실시간 모니터링 등의 동적인 GUI를 염두에 두고 만들어지지 않았다. 이 이유로 필자는 matplotlib을 대신 pyqtgraph를 사용한다. 2. 편리성. 프로그램 GUI를 PyQt로 개발했다면 pyqtgraph를 프로그램에 .. 2021. 2. 20.
파이썬 Python GUI (Tkinter vs PyQt ) 프레임워크 파이썬에서 GUI 를 그릴 때 많이 사용하는 프레임워크에 Tkinter와 PyQt가 있다. 결론적으로 말하면 PyQt를 추천한다.  이유를 설명하자면1. 현재 PyQt를 지원하는 다양한 프레임워크, 라이브러리가 있으며 앞으로도 그럴 경향이 높다. PyQt로 개발한 프로그램을 수정할 때, Tkinter 보다 용이하게 기능을 추가할 수 있다. 2. GUI 자체를 처음 접하거나 JAVA 등에서 GUI를 사용하신 분이더라도 처음 사용하는 프레임워크라면 컴퓨터 환경, 개인의 실수 등으로 Error 메세지를 접하게 된다. 이 때 좀 더 많은 해결방법과 정보를 얻기에는 PyQt가 유리하다. 3. PyQt는 크로스-플랫폼 이기에 개발을 할 때, 이를 염두하고 코드를 작성한다면 크로스-플랫폼을 구현하기에 용이하다. 반면.. 2021. 2. 20.