본문 바로가기

All199

[알고리즘] 큐(Queue) 정리 & 문제 풀이(Python) 큐 : 자료구조 중 하나로, 먼저 넣은 데이터가 먼저 나오는 FIFO(First In First Out)구조이다. - 큐는 한쪽 끝에서는 삽입 연산만 이루어지며 다른 한쪽 끝에서는 삭제 연산만 이루어지는 유한 순서 리스트이다. - 구조상으로 큐가 스택과 다른 점은 스택에서는 삽입과 삭제가 같은 쪽에서 일어나지만 큐에서는 다른 쪽에서 일어난다. 큐의 연산 큐의 포인터 - front: 큐의 첫 번째 원소를 가리키는 포인터 - rear: 큐의 마지막 원소를 가리키는 포인터 - push(): 큐에 값을 넣는 연산 (Enqueue) rear 위치에 자료를 추가하고 rear를 1 증가시킴 - pop(): 큐에서 자료를 빼는 연산 (Dequeue) front 위치에 자료를 제거하고 front를 1 증가시킴 - fro.. 2022. 2. 7.
[알고리즘] 스택(Stack) 정리 & 문제 풀이(Python) 스택 : 자료구조 중 하나로, 먼한 쪽 끝에서만 자료를 넣고 뺄 수 있는 LIFO(Last In First Out) 구조이다. - 파이썬은 스택 자료구조를 제공하지 않는다. 기본 클래스인 list를 통해 스택을 흉내낼 수 있다. 스택의 연산 - push(item): item 하나를 스택의 가장 윗 부분에 추가한다. - pop(): 스택 가장 위에 있는 원소를 삭제하고 그 원소를 반환한다. - peek(): 스택 가장 위에 있는 원소를 반환한다. (삭제하지는 않는다.) - isEmpty(): 스택이 비어있다면 1, 아니면 0을 반환한다. 대표적인 문제 및 사용 - 웹 브라우저 방문기록(뒤로가기) - 실행 취소(undo) - 역순 문자열 만들기 - 수식의 괄호 검사(연산자 우선순위 표현을 위한 괄호검사) -.. 2022. 1. 31.
[운영체제] 메모리 구조 (재귀호출 vs 반복문) 재귀에서 탈출조건(적절하게 빠져나오는 구문?)이 없으면 스택오버플로우가 발생한다. why? 스택에서 뭔 문제가 있겠지!! 스택이 존재하는 메모리 구조를 더 이해해두기 위해 포스팅한다. 메모리 구조 https://blog.naver.com/zzaxowns/222611286857 (참고블로그! 여기 더 자세하게 설명되어있는듯한..) 프로그램이 운영체제로부터 할당받는 대표적인 메모리 공간은 다음과 같다. 코드(Code) 영역 실행할 프로그램의 코드가 저장되는 영역이다. 프로그램이 시작하고 끝날 때까지 메모리에 계속 남아 있는다. 컴파일된 기계어가 들어가게 된다. CPU는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리한다. 데이터(Data) 영역 프로그램의 전역 변수와 정적 변수, 문자열 상수가 저장되는 영.. 2022. 1. 26.
[자바 공부 방향성 잡기...~!] 정말 태초의 "자바"라는 언어만 알고 유튜브 영상을 봤을 때 이게 뭐고 저게 뭔지 몰랐었는데 이제 spring, JPA 등등 그 단어들이 어떤건지 대충 어디서 쓰이는지 아니깐 재밌었다. 자바의 정석 자바의 정석 저자님이 직접 강의하신다..!! 이거 보면서 객체지향개념 다시 보는 중 https://www.youtube.com/playlist?list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp 자바의 정석 기초편(2020최신) 최고의 자바강좌를 무료로 들을 수 있습니다. 어떤 유료강좌보다도 낫습니다. www.youtube.com Head First Servlets&JSP (엄청 옛날 책이긴하다) 스프링4 프로그래밍 입문책 JPA 프로그래밍(김영한 저서) 자바웹개발워크북(엄진영 강사님) 코.. 2022. 1. 23.
[Project] API, REST, REST API 이해를 목적으로 한 포스팅 2..... ! 출처는 아래 링크이다. https://velog.io/@wkahd01/%ED%8C%80-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-1%EC%A3%BC%EC%B0%A8.-%EC%9A%A9%EC%96%B4-%EC%A0%95%EB%A6%AC-2 팀 프로젝트 1주차. (용어 정리 2) Representational State Transfer의 약자로, 엄격한 의미로 REST는 네트워크 아키텍처 원리의 모음이다. 여기서 '네트워크 아키텍처 원리'란 자원을 정의하고 자원에 대한 주소를 지정하는 방법 전반을 일 velog.io 1. API API는 애플리케이션 소프트웨어를 구축하고 통합하기 위한 정의 및 프로토콜 세트로, 애플리케이션 프로그래밍 인터페.. 2022. 1. 21.
[Project] 클라이언트와 서버 양 입장에서 로그인 과정 이해하기 이해를 목적으로 한 포스팅..... ! 출처는 아래 링크이다. 클라이언트와 서버 양 입장에서 로그인 과정 이해하기 (feat. session, JWT,소셜로그인) 로그인 기능을 구현하기 위해서 클라이언트와 서버는 각각 어떤 일을 해야할까요? velog.io 1. Session 방식 서버에서 사용자의 세션 데이터를 저장해서 로그인 기능을 구현하는 방법 - 프론트와 서버 각각의 역할 1. [프론트] 프론트 쪽에서 로그인 페이지에서 아이디, 비번을 서버로 POST함 a. [서버] 서버는 기존에 회원가입을 한 사람이면 서버에서 세션 아이디를 만들어줌 b. [서버] 세션 아이디를 담을 변수, DB 공간을 마련해 거기 저장 (세션 데이터라고 부름) c. [서버] 그걸 쿠키라는 것에 포션해서 고객 브라우저에 그 쿠키.. 2022. 1. 20.
[Project] JWT 팀프로젝트로 스터디 사이트를 만들어 보기로 했다. 아직 1인분도 못 하는 무지의 인간이지만(;-;) 이해라도 하기 위해 모르는 개념을 일단 정리하려고 한다. 먼저, 사이트를 이용하기 위한 로그인, 회원가입부터 구현을 시작했다. ID/Password 값을 받아서 데이터베이스와 비교하는 것이 아니라 JWT(Json Web Token)을 이용한다고 한다. (Json은 뭐고 JWT는 뭐죠....) JWT 1) Why JWT? HTTP 통신 JWT를 왜 사용하는가가 나와야하는데 갑자기 HTTP 통신이 등장했다. "로그인"이라는 과정은 서버와 클라이언트가 데이터를 주고 받는 통신 방법이 필요하다. 그 통신 방법이 HTTP라는 프로토콜(통신 방법)이다. HTTP는 아래와 같은 특성을 가진다. - connectionl.. 2022. 1. 20.
[알고리즘] 재귀함수(Recursive function) 정리 & 문제 풀이(Python) 재귀함수 : 함수 안에서 자신의 함수를 다시 호출하는 방식 - 재귀, 즉 자기호출은 어떤 문제를 해결하는 과정에서 자신과 똑같지만 크기가 다른 문제를 발견하고 이들의 관계를 파악함으로써 문제 해결에 접근하는 방식이다. 재귀함수의 장점 - 반복문을 대신해서 재귀함수로 사용하게 되면 보다 간결한 코드 작성이 가능해진다. 재귀함수의 단점 - 연산이 느리다.(많은 연산을 필요로 한다는 얘기) - 재귀함수의 단점으로 인해 현재 실무에서는 거의 사용하지 않는다고 함. - 재귀함수 단점 보안으로 동적프로그래밍 사용 def recursive(): print("재귀함수") recursive() recursive() # 함수 호출 재귀함수를 사용할 때 가장 중요하게 봐야하는 것은 "탈출조건"이다. 위 코드와 같이 탈출조건.. 2022. 1. 13.
[참고하기 좋은 블로그 및 자료들] https://23log.tistory.com/24 코딩 캠프 총 정리 (SSAFY, 마에스트로, 부스트캠프 등) 삼성 청년 SW 아카데미 (SSAFY, 싸피) 주최 기관 삼성, 고용노동부 모집 기간 홀수 기수 : 10월 경 짝수 기수 : 4~5월 경 지원 자격 만 29세 이하 / 4년제 대학 졸업자 및 예정자 / 미취업자 선발 과정 서 23log.tistory.com https://www.zoomkoding.com/ Home 줌코딩의 개발일기 www.zoomkoding.com https://zhuyuan7.github.io/project/ 카페 추천 웹페이지 프로젝트 Joo-Evolution. zhuyuan7.github.io https://gona.tistory.com/71 비전공자의 2021 카카오.. 2022. 1. 13.