728x90
반응형
SMALL

python 6

[Python] Queue, Stack 개념 및 알고리즘 문제 풀기

1. Queue와 Stack 1.1 Stack 1.1.1 스택 구조 스택은 LIFO 또는 FILO 데이터 관리 방식을 따름 LIFO : 마지막에 넣은 데이터를 가장 먼저 추출 FILO : 처음에 넣은 데이터를 가장 마지막에 추출 대표적인 스택의 활용 컴퓨터 내부의 프로세스 구조의 함수 동작 방식 주요 기능 push() : 데이터를 스택에 넣기 pop() : 데이터를 스택에서 꺼내기 1.1.2. 스택 구조와 프로세스 스택 스택 구조는 프로세스 실행 구조의 가장 기본 함수 호출 시 프로세스 실행 구조를 스택과 비교해서 이해 필요 def recursive(data): if data= 100: del data1[0] del data2[0] return 1+ check(data1,data2) else: retur..

[Python] 배열 공부 및 순열 검사 알고리즘 문제 풀기

1. 배열 공부 1.1 배열이 왜 필요할까? 같은 종류의 데이터를 효율적으로 관리 순차적으로 관리 배열의 장점: 빠른 접근가능 배열의 단점: 추가/삭제가 쉽지 않음, 미리 최대 길이를 지정해야 함 1.2 파이썬과 배열 # 1차원 배열: 리스트로 구현시 data = [1,2,3,4,5] # 2차원 배열 : 리스트로 구현시 data = [[1,2,3], [4,5,6],[7,8,9]] 2. 순열 알고리즘 문제 2.1 문제 설명 길이가 n인 배열에 1부터 n까지 숫자가 중복 없이 한 번씩 들어 있는지를 확인하려고 합니다. 1부터 n까지 숫자가 중복 없이 한 번씩 들어 있는 경우 true를, 아닌 경우 false를 반환하도록 함수 solution을 완성해주세요. 제한사항 배열의 길이는 10만 이하입니다. 배열의 ..

[Python] Mongodb에 저장된 데이터 순차적인 id 값으로 관리하기

python flask를 사용해 웹 페이지를 만드는 연습을 했다. 처음에는 mysql을 사용해서 데이터를 저장했다. 다음에는 완성된 웹 페이지의 기능을 그대로 가져와서 mysql이 아닌 Mongo db를 활용하여 다시 만들어보려고 했는데 문제가 발생했다. mysql에서는 데이터가 저장될 때 id 값이 자동으로 1,2,3 ...으로 순서대로 저장이 됐기 때문에 따로 저장하는 코드가 없이 id 값을 index로 사용할 수 있었다. 그리고 이 id를 변수로 data를 관리했다. 하지만, mongo db에서는 id가 object로 저장이 되기 때문에 따로 id값을 지정해줘야 했다. 또한, id 값을 따로 지정해줘서 데이터를 관리하는 문제점은 순차적으로 id를 구성하지 못하다는 점이다. 1,2,3,4,5 라는 데..

flask를 사용하여 python에서 간단한 웹페이지 만들기 #1

python에서 flask 라이브러리를 사용해서 간단하게 웹페이지를 만들어보자. 기본적으로 python이 설치되어 있다는 가정하에 설명을 진행한다. 명령 프롬프트를 들어간다. 내가 만들고자 하는 파일을 우선 만들고 해당 폴더에 들어간다. mkdir web_flask cd web_flask virtualenv 설치 pip install virtualenv virtualenv 명령을 통해서 userlists 프로젝트 생성 virtualenv userlists ativate.bat 명령어를 통해 가상환경으로 들어간다. Scripts\activate.bat flask 라이브러리 설치 pip install flask 파이썬 라이브러리는 일반적으로 requirement.txt 파일로 관리한다. freeze 명령어는..

[Python] 코팅테스트 할 때 사용하면 좋은 coding 스킬

python 수업을 듣다가 문득 문제해결 수업에서 배운 유용한 coding 스킬들이 생각이 나서 글을 적게 되었다. 이때 나는 python 왕 초보였기 때문에 초보분들이 사용하기에는 정말 좋을 것이다. 1. List comprehension (여러 줄로 쓰여진 리스트 코드 짥게 쓰기) list를 만들 때 보통 변수를 선언하고 그 안에 리스트를 넣는다. 예를 들면 data= [] for i in range(10): data.append(i*i) print (data) 이런식으로 많이 만든다. 하지만 코딩을 하다보면 최대한 깔끔하게 만들고 싶은 강박관념이 생길 것이다. data = [i*i for i in range(10)] 이렇게 간단하게 변경할 수 있다. if 문이 들어가는 list 생성 코드를 바꿀 때..

728x90
반응형
LIST