현재 크래프톤 정글에 지원 후 훈련을 진행 중이다.0주차에 셋이서 웹을 기획하고 만들었다.1주차에 들어가기 전 심기일전을 하고,다른 크래프톤 정글에 관심이 있는 사람이 참고할 수 있도록이하 내용을 작성한다.크래프톤 정글은 비전공자가 개발자로 전향할 때에 생기는, 4년간
개인적으로 이해한 내용. 해당 책의 목적은프로그램의 정확성, 성능, 유용성에 영향을 주는 개념을 숙지하기 위해, 파워 프로그래머를 염두에 두고 작성했다.1장은 컴퓨터 일생 주기를 추적하며,컴퓨터 시스템의 주요 아이디어 및 주제를 제시한다.C언어 기준으로 얘기한다.단순히
배열, 재귀함수, 정렬, 완전탐색(브루트포스)문자열, 반복문, 복잡도(BigO, 시간, 공간), 정수론서로 다른 자료형(type)을 저장 가능. 배열은 원소(element)로 이루어져있고, 원소마다 인덱스(index)를 가진다. Data container로 리스트(li
\[알고리즘 + 자료구조 = 프로그램] 최선의 알고리즘을 찾는 기준알고리즘(Algorithm)어떤 문제를 해결하기 위해 밟아 나가는 연속적 단계.명확함(Definiteness): 각 단계가 명료하고 간결하며 모호하지 않음효율성(Effectiveness): 각 동작이 문
\[자료구조] 4. 스택(Stack)이란? / 연산, 구현방법\[python] python의 self와 init의 이해자료구조.쌓아놓은 더미를 뜻하며, 아래부터 위까지 층층이 쌓인 구조.가장 최근에 들어온 데이터가 가장 먼저 나감.상자에 물건을 쌓아놓으면 가장 위에 것

이론 공부 2일차.자료구조와 정렬을 나눠서 설명하기로 했다.대충 알고리즘 코드를 보면 이해가 안 가는 건 아니고,무슨 단계가 무슨 역할 하는지도 알 것 같은데,좀... 외운다는 느낌이 들었다.키워드 양이 많으니 단시간에 빨리 습득하려면 그게 맞긴 한데,장기적으로 앞으로
논리곱(합)의 부정은 각각 부정의 논리합(곱)과 같다는 법칙.만약 10과 99 사이의 양수의 정수를 받는다고 해보자.if 10 <= num <= 99 : break라고 했을 때, 이건 이렇게도 쓸 수 있을 것이다.if not(num < 10 or num
copy()를 쓸 때는, 기본 설정이 shallow copy, 얇은 카피이기 때문에 참조되는 주소를 공유하므로 하나를 바꾸면 다른 것도 참조 주소가 바뀌는 영향을 받는다.그래서 아예 별도의 참조 주소를 받고 싶다면, deepcopy() 함수를 써야한다. 참조하는 객체
이론 3일차.월요일날 공부 상황과 문제 풀이를 공유해야하므로 많은걸! 해야한다.검색 알고리즘, 스택 모자란 부분 있으면 보충, 큐,이후 정렬 알고리즘의 버블, 단순 선택, 단순 삽입까지 한 뒤 1914 하노이의 탑,2750 수 정렬하기,1181 단어 정렬,10828 스

단순히 해당하는 키 값을 넣으면 되지 않나? 했는데...키 값을 해시값화,해당하는 빈 버킷 찾기 전에,이미 같은 값이 있으면 추가 실패... 라고 하더라.정답코드는...p가 None이 아닌가?key값이 일치하는가?일치하지 않는다면 다음 노드로.=> None까지 도달.노
def find(value : Any) -> int:실제 코드는...위에부터 선형 검색이 맞는데,확실히 나는 시작 지점을 지정해주지 않았지만,정답 코드에서는...ptr은 가장 위의, 비어있는 칸을 가리키는 거니까range를 self.ptr -1부터 -1까지, -1 단위
키의 항목값의 대소 관계에 따라 데이터 집함을 일정한 순서로 바꾸어 늘어놓는 작업.값이 작은 데이터를 앞쪽에 늘어놓는 것을 오름차순(ascending) 정렬이라고 하고, 그 반대를 내림차순(descending) 정렬이라고 한다.대표적인 알고리즘 8가지를 소개할 예정.(
단순 삽입 정렬은, 배열 원소수가 많아지면원소 삽입에 필요한 비교, 교환 비용이 커진다.그러나 이진 검색법을 사용하여 삽입정렬을 하면,이미 정렬을 마친 배열을 제외하고 원소를 삽입해야할 위치를 검사......이를 binary insertion sort, 이진 삽입 정렬
가우스가 오답을 발표했다고 유명하다고 한다.유명한 사람을 슬프다.오답한 게 널리 후손까지 알려졌다.그치만 그것도 인기가 아닐까.이 문제는 다음과 같다.8개의 퀸이 서로 공격하여 잡을 수 없도록 8x8 체스판에 배치하세요.가로줄을 행,세로줄을 열, 이라고 하고배열 인덱스
힙 정렬은힙의 특성을 이용하여 정렬하는 알고리즘이다.힙은,'부모의 값이 자식의 값보다 항상 크다'는 조건을 만족하는완전 이진 트리이다.이 때, 부모의 값이 자식의 값보다 항상 작아도 힙이라고 한다.아무튼, 두 값의 대소 관계가 일정하면 된다.저는 하라면 하는 사람입니다
병합 정렬은...배열을 앞부분과 뒷부분의 두 그룹으로 나누어각각 정렬한 후 병합하는 작업을 반복하는 알고리즘이다.정렬을 마친 두 배열의 병합과정을 보자.각 배열에서 주목하는 원소의 값을 비교하여,작은 쪽의 원소를 꺼내새로운 배열에 저장한다.이 작업을 반복하여,정렬을 마
문자열에서 부분 문자열을 검색하는 알고리즘.브루트 포스법, KMP법, 보이어 무어법 등이 있다.문자열 검색(string searching)은어떤 문자열 안에 다른 문자열이 포함되어있는지 검사하고,만약 포함되어있다면 어디에 위치하는지 찾아내는 것이다.검색되는 쪽의 문자열

Introduction to ALGORITHMS그래프(vertex, edge, node, arc)종류: Undirected, Directed, Weighted Graph표현방식: 인접행렬(Adjacency Matrix), 인접리스트(Adjacency List)이거 보고
하아아울지않아아니 그냥 울래요점.메인 메모리를 쓰는 것 자체가,디스크에서 로드하는 시간이 길기 때문인데,메인 메모리도 용량이 커지면서,용량이 커지면 속도도 느려진다는 법칙과,성능을 개선하기 위해 메모리 속도 개선보다는프로세서 속도를 개선하는 시대의 흐름에 따라프로세서의

이진 트리를 입력받아 전위 순회(preorder traversal), 중위 순회(inorder traversal), 후위 순회(postorder traversal)한 결과를 출력하는 프로그램을 작성하시오.예를 들어 위와 같은 이진 트리가 입력되면,전위 순회한 결과 :
다이나믹 프로그래밍
기계어 코드와 어셈블리 코드를 배우는 이유는?최적화 성능,즉 어떻게 해야 최적화 되고, 왜 최적화 되는지 알기 위함이다.(동시에 어떤 것이 비효율적인지 알아볼 수 있다.)예를 들어,쓰레드 프로그램의 구성을 파악한다든가,(시스템)시스템 감염 시 런타임 제어 정보를 어디에
피보나치 수.0과 1로 시작, 2번째 부터는 바로 앞 두 피보나치 수의 합.n이 주어졌을 때, n번째 피보나치 수를 구하자.n<=90 자연수.주어진 수식이fn = fn-1 + fn-2 라서그냥 n크기 만큼의 f라는 배열을 미리 만들고f0 = 0, f1 = 1, 을
특히 부분만 읽어보려한다소스코드에서, 머신 코드로 컴파일 과정 중 일어나는 하나가링킹(linking) 이다.이러한 링킹이 있기에,소스 파일을 여러개로 독립적으로 구성하여,필요할 때 호출시켜 이어준다.이러한 역할을 하는 것을 로더(loader)라고 하며,이 과정을 로드
malloc, calloc, realloc
....
내가 맡은 부분은 메모리 단편화, demane-zero memory, 이더넷.전반적으로 보겠지만 설명을 맡은 부분은 그렇다.
mem_init힙에 가용한 가상 메모리를 큰 더블 워드로 정렬된 바이트의 배열로 모델.mem_heapmem_heap과 brk 사이 바이트가 할당된 가상 메모리를 나타낸다. mem_brkbrk 다음에 오는 바이트는 미할당 가상 메모리가 된다.mem_sbrk추가적 힙메모리
연휴로 내주신 과제.모 대학 시험 문제, 깃허브에 퍼블릭으로 공유됨.Linked_List.ListNodeint itemsturuct listnode \*next와LinkedListint sizeListNode \*head로 이루어져 있다.그 외 제공되는 함수는인덱스로
참고가 될지 모르겠으나 적는 4기 지원 후기.현재 입소 후 학습 중이나,학습은 아직 진행 중이니 입학 시험까지의 과정만을 기재하며시간이 지나 잘못 기억하고 있는 부분이 있을 수 있습니다....온라인 지원서 및1분 자기 소개 영상을 제출한다.자기 소개 영상의 퀼리티는 크
추가 함수
네트워크 계층(OSI7 Layer, TCP/IP Layer) 클라이언트 - 서버 모델 소켓 (socket, bind, listen, accept, connect, close) 파일 디스크럽터 Datagram Socket VS Stream Socket CGI / WebServer / MIME Type HTTP(요청/응답, 헤더, 메소드, 상태 코드...
...프레임워크는 네트워크 등의 기능을 단순화하여이용을 쉽게 하는 역할.그래서 에러가 생겼을 때,로우 레벨에서 어느 단계에서 문제가 생겼는지판단하기 위해서는로우 레벨이 어떻게 생겼는지 알아야 하니까!클라이언트와, 서버가 통신하는 가운데에 있는걸인터넷이라고 함.클라이언트

소켓 인터페이스.
HTTP 에 관하여.
Tiny 웹서버.

CSAPP 12 동시성 프로그래밍
web-proxy lab

마감 10분전에 총정리말도 안된다busy wating을 해결해라\-> 리스트 수정할때마다 인터럽 끄고 키는거 하지말라는거임?(x)\-> 얘가 while문으로 도는거 하지 말라는 거임?(대충 비슷)\-> 아 그럼 일정 시간 이상 자도록 그동안 다른 곳에서 정확한 시간 재
10시 반 OS 강의
이번 티타임 주제는일머리가 좋은 사람이란 뭘까?회사에서 선호하는 신입(인재)상. AB180 채용설명회.
저번 주 꺼 안했던거같다Difference Between User Mode and Kernel Mode커널 모드에서는 모든 프로세스가 단일 가상 주소 공간을 공유합니다.사용자 모드에서는 모든 프로세스가 별도의 가상 주소 공간을 갖습니다.오, 독특.그 외에도 커널 모드에

저번 프로젝트랑 스케일 똑같은데왜 이번 프로젝트가 더 정리하기 막막한 것일까....절친한 thread와 이별하고(엄밀히 따지자면 이별은 덜 했는데)process에게 놀러갔습니다분명 process 안에 thread가 여러개 있는거라 배웠지만PintOS는 process 마
2시 40분 티타임 > 무엇이 매력적인 이력서인가? : 내용적 측면. 첫장에 임팩트있게. 그리고 간결하게. 단, 정확히 무슨 일을 했는지 정의는 기술자 기준으로 알아볼수는 있도록. (포트폴리오 일부를 이력서에 삽입하는 임팩트도 나름 도전.) 뒷장은 실제 구현한 프
어중간한 인간은...project 3을 pass 하지 못하는 것일까...아니다어중간한건 인간이 아니다코드지내가 쓴 코드가 어중간한 것이다아무튼 총 정리하다가 번뜩임이 오지 않을까 기대하며 쓰는 총정리...목차만 쓰고 잠깐 넋놓음내일부터 쓰면 안 되나?비록... 아직 9
Stack growth Memory Mapped Files mmap munmap do mmap do munmap Swap In/Ount
swap in/out...이 코드는 나는 에러때문에 돌아가지 않지만,돌아가는 다른 사람의 코드도 에러가 뜨기 때문에,나의 코드의 다른 곳에서 문제인 것같다...또 정말 안 되어 완전히 다른 사람 코드로 바꾸었기때문에내가 어떻게 구현했는지 말은 하겠지만........그렇
면접 잘 보는 법이 주제.마지막 티타임이라고 들은 듯 하다.면접을 잘 하는 가장 정통은,면접을 많이 하는 것.그러니 꼭 가고 싶은 곳만 지원하기보단, 면접 경험을 쌓기 위해서라도 많이 지원해라.신입은 무언가를 했다고 해도 크게 와닿지 않는다.그보다 자신이 어떤 문제를
페이지 이동 없이 서버에 요청을 보내고 응답을 받는 기술.jQuery, axios 같은 라이브러리 사용.브라우저에서 객체를 제공하긴 하지만사용방법이 복잡, 서버에서는 사용 불가.(실험적 단계.)script 태그 첫번째에 axios 링크 추가.axios.get 내부에 n
리액트... 도 시간나면 볼까나 CH2 웹 개발 기초 지식 2.5 타입 스크립트 2.5.1 변수 선언 선언키워드 변수명 : 타입 let letB : string; 2.5.2 지원하는 타입 원시값, 객체, 함수. typeof instance === "unde
3.1 컨트롤러(controller) 요청(req)을 받고 처리된 결과를 응답(rep)로 돌려주는 인터페이스. 음 JSON 결과 읽기 편하게 출력하는 법 curl -X GET http://loaclhost:3000/users/0 | jq
100명 중 소프트 웨어 엔지니어는 불과 10명.소프트웨어 엔지니어가 AI 엔지니어가 되는 경우는 없었음.AI 엔지니어는 석사 이상이 필요.기술 자체를 자산으로 삼기때문에 논문 읽고 낼 인재 필요.관련 부트 캠프로는 AI 부트캠프로만 채용 설명회를 나가긴하지만CS는 무
4.1 프로바이더 서버가 제공하는 핵심 기능은 전달 받은 데이터를 어떻게 비즈니스 로직으로 해결하는가. (이런걸 비즈니스 로직이라고 하나보군.) 앱이 제공하고자 하는 핵심 기능, 즉 비즈니스 로직을 수행하는 역할을 프로바이더, provider라고 한다. 단일 책
가상 DOM, document object model과 JSX, Javascript XML라는 방식으로 동작.HTTP 응답 데이터를사용자가 볼수 있도록 웹페이지 화면에 보여주는 것을 렌더링, rendering이라고함.리액트는 SPA, single page applica
리액트의 기본 3요소는 가상 DOM, JSX, 컴포넌트이다.App이 컴포넌트.React.StrictMode는 코드가 잘못되었는지 판단하여 에러메시지를 띄우는 컴포넌트이며,reportWebVitals()는 앱의 성능을 측정하는 기능이다.리액트에는 두 개가 항상 필요하다.
16.8.0 버전부터 생김.컴포넌트 데이터 관리useMemouseCallbackuseStateuseReducer컴포넌트 생명 주기 대응useEffectuseLayoutEffect컴포넌트 메서드 호출useRefuseImperativeHandle컴포넌트 간의 정보 공유us