일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 문제풀이
- 브루트포스
- github
- deque
- 면접복기
- 프로세스
- 백준
- 마크다운
- 이진탐색
- 그래프탐색
- 시뮬레이션
- GarbageCollector
- 회고
- 정수론
- GC
- 그리디
- Stack
- 배열 돌리기1
- 몬티홀
- 그래프 탐색
- Python
- 스레드
- g1gc
- DP
- 구현
- 적정 스레드
- 분할정복
- BFS
- Markdown
- Greedy
- Today
- Total
목록전체 글 (63)
FeelingXD
자바 버전들( Java versions ) 이 글에서는 자바 특정 자바 버전 몇가지에 대해 다룹니다.(8,11,17) 왜 특정 버전에 대해서만 다루나요 ? JAVA 는 옛날언어 라는 프레임이 있지만 Java도 매년 여러가지 업데이트를 통해 JAVA 사용자들에게 더 좋은 서비스를 제공하고자 하고있습니다. 그중 몇가지 버전(8,11,17)은 LTS(LONG TERM SUPPORT)로 장기 지원 버전이기에 장기적으로 변화가 적고 지원기능에대해 장기적으로 업데이트, 개선 을 지원하기에 결정 하였습니다. JAVA 8 [!NOTE] JAVA 8 버전부터 기존의 딱딱하고 JAVA는 옛날 언어다 라는 프레임을 많이 개선한 버전이라고 생각됩니다. 😉 JAVA 8 의 대표적 특징들 ✨ 람다 표현식(Lambda Expres..
🤔 - 스프링 부트3.x 버전부터 Spring-Security 설정법들이 몇가지 변경 되었습니다. 알게 된점 몇가지를 작성합니다. 1. Security http Request 을 lambda 형식으로 ! 기존 HttpSecurity 의 Request 관련 적용이 변경되었습니다. //예시코드 @Bean public SecurityFilterChain defaultFilter(HttpSecurity http) throws Exception { http .securityMatchers.requestMatchers("/api/**") .and() .authorizeHttpRequests.anyRequest().hasRole("USER") .and() .httpBasic(Customizer.withDefaults..
이 글은 백악관의 C/C++ 논의 기사의 일부 번역입니다. 백악관에서 C/ C++ 사용을 지양 해야 한다고 권했다. Biden administration calls for developers to embrace memory-safe programing languages and move away from those that cause buffer overflows and other memory access vulnerabilities. 번역 바이든 행정부에서 개발자들로 하여금 메모리 안전 프로그래밍 언어를 채택하고 버퍼 오버플로 및 기타 메모리 엑세스 취약성을 유발하는 프로그래밍 언어에서 벗어날 것을 말했다. ONCD(The White House Office of the National Cyber Dire..
프로세스 와 스레드 이 글에서는 프로세스와 스레드 의 공통점 과 차이점 에대해 다룹니다. 👀 프로그램 우리가 프로그램을 실행하면 작업관리자에 프로세스로 등록되고 우리가 사용하는 서비스가 실행 됩니다. 어떻게보면 정적인 상태의 코드 이며 프로그램이 실행되면 정적이였던 코드가 메모리에 올라가고 실행되면서 동적인 프로그램 이며 실행단위인 프로세스가 됩니다. 프로세스 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터의 프로그램으로 컴퓨터가 실행하는 프로그램의 단위 입니다. OS는 프로세스 단위로 컴퓨터 자원을 할당 하며 실행되는 프로그램으로 볼 수 있습니다. 동적 프로그램(작동되고 있는 프로그램) OS로부터 자원을 할당받아 메모리에 적재되어 실행되고있는 상태의 프로그램 이기도 합니다. 스레드 스레드는 프로세스 내에서 ..
❓ Problem 🤔 How 문제이름이 정말 직관적이라고 생각되는 문제 2n * 2n 의 형태의 board 가 주어지고 입력받은 r,c 번째 원소는 언제 방문 하는지 출력하는 문제이다. 수학의 사분면으로 접근하기 수학의 사분면의 기준으로 현재 접근하는 사각형의 한변의 길이가 얼마인지 알수 있다면 모든 칸을 방문하지 않더라도 답을 도출 할 수 있다. 처음 탐색은 (0,0) 부터 탐색한다. if y + l
❓ Problem 🤔 How 여담으로 이러한 쿼드트리 방식은 실제 비디오 압축, 등 여러 압축기술에 사용된다 ! 문제를 보고 딱 분할정복 문제이다 싶었는데 어떻게 구현하는지 살짝 먹먹 했는데 다행이 잘 해결했다. 😅 구현, 분할정복 문제를 익숙하게 할수있도록 연습해야겠다. 수학의 사분면을 이해하고 접목해야한다. 쿼드트리 지문에 0과 1이 섞여 있으면 전체를 한 번에 나타내지를 못하고, 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래, 이렇게 4개의 영상으로 나누어 압축 으로 명시되어 있다. 행열을 탐색하며 처음 글자와 비교했을때 다른글자가 있으면 시작점을 기준으로 4분면을 나누고 작은단위로 쪼개면서 다시 압축여부를 판별해야한다. compression 함수 해당함수는 압축하는 함수임과동시에 재귀적으로 호출..
웹을 통해 검색하면 어떤일이 일어날까?(front) 이 글에서는 웹을 통해 검색하면 front 에서는 어떤일이 일어나는지에 대해 작성합니다. 👀 1. 웹 브라우저에 URL을 입력하고 Enter 키 입력 사용자가 https://wwww.naver.com 을 입력하면 프론트 부분에서는 어떤일이 일어날까 ? 이때 입력한 주소인 https://www.naver.com 을 분석하면 다음과 같다. https : 프로토콜 로 어떤방법으로 통신할지에 대해 명시한다. www.naver.com : 은 웹 사이트의 도메인으로 사람이 기억하기 쉬운 주소이며 특정 서버의 ip를 대신하여 나타 냅니다. 실제 연결시에는 해당 주소에 대한 ip주소를 알아야하며 DNS서버를 통해 해당 주소의 ip를 알아 냅니다. 2. 웹 브라우저가 ..
웹을 통해 검색하면 어떤일이 일어날까? 면접 단골질문 중 하나인 웹에 검색하면 컴퓨터 내부에서 일어나는 일들에 대해서 인프라 관점으로 작성하는 글입니다. 🤔 www.naver.com 을 입력하면 .. 도메인 주소를이용해서 접속하려는 ip 를 얻는 방법 우선 사용자가 웹브라우저 를 통해 주소창에 www.naver.com 을 검색한다. 기본적 으로 통신을 하려면 통신 하고자하는 주소의 ip주소를 알아야한다. 위에 언급한 사용자가 www.naver.com 은 주소 로 통신하기전에 주소를 ip로 변환하는 과정을 거쳐야한다. 그럼 주소를 ip 로 변환하는 과정은 어떻게 일어날까? 우선 호스트의 hosts 파일을 참고 한다. 만약 검색 하려는 주소가 hosts 파일에서 찾을 수 있다면 해당 파일을 참고하여 ip주소..
❓ Problem 🤔 How 다차원 배열을 돌려야하는 문제가 나온다면 기존 배열을 복사 후 이동 위치에따른 움직임을 생각하는 편이다. 복사하는 과정에서 공간복잡도와 시간복잡도를 소모 할 수 있지만 개인적으로 이러한 풀이를 선호한다. 문제만 읽어보면 정말 직관적인 문제이다. 단순히 배열을 돌려서 만들어지는 배열을 출력하는 문제. 해결하기 위한 특수한 알고리즘을 사용한다기보다는 직관적으로 읽고 구현에 포커스를 맞추는 문제이다. 간단하게 핵심이되는 배열을 돌리는 코드에대해서만 추가적으로 설명하고자 한다. def rotate_board(board, round): global M, N copy_board = [line[:] for line in board] square = min(M, N) # 보정 M -= 1 ..
운영체제 (Operating System)란? 운영 체제(OS)는 간단하게 말하면 컴퓨터의 하드웨어를 관리하는 시스템(프로그램) 입니다. 운영체제는 각종 하드웨어 자원과 소프트웨어 자원을 효율적으로 운영, 관리 함으로써 사용자가 시스템을 이용하는데 편리함을 제공하는 소프트웨어입니다. 운영체제는 모든 하드웨어와 소프트웨어를 관리하는 컴퓨터 시스템인 실행 관리자로도 볼 수 있습니다. 운영체제 가 없던 시절.. 🤔 - 그럼 운영체제가 없던시절 컴퓨터를 사용할 수 없었을까 ? 운영체제의 설명을 보면 실행 관리자 표현 등을 보면 운영체제가 없으면 컴퓨터를 사용할 수 없을것 만 같다. 물론 운영체제가 없던시절에도 컴퓨터가 있었으며 사용 가능 하였다. 다만 컴퓨터의 최초의 설계 대로만 동작했고 그외 다른기능을 넣고싶..
Indently I always get triggered when people say: "I've been writing code for 'X' amount of years, therefore my argument is more valid than yours". I mean, I've been riding a bicycle for over 20 years, I'm still terrible at it, but you don't hear me telling the teens at Tour de France that I have more experience than them 🤣 What do you guys think? 번역하면 다음과같다. 나는 매번 "내가 x 년..
글을 시작하기전에 공유와 번역을 허가해준 Noah Gibbs에게 감사를 전하고싶다.😉 내 영어실력이 그리좋지 못해서 내 생각이 잘 전달된지는 모르겠다.. ㅋㅋ 몰랐던 것들 나는 컴퓨터와 함께 자란 새대이기에 컴퓨터, 스마트폰을 다루는데에 비교적 익숙하다. 그런데 생각해보면 스마트폰, 컴퓨터가 나온지인간역사로치면 그리 오래되지않았다는걸 글을 통해 실감했다.. (포트란이란 언어가 54년 에나왔으니 2024년기준 약 70년 정도 ?) 프로그래밍 역사가 생각보다 진짜 짧구나 .. 😅라는 걸 새삼 다시 느꼈다. 좋은 커뮤니케이션? 그의 글 에서 자신의 어린시절을 회상하며 외톨이였던걸 회상한다. Noah는 그때당시의 자신이 바보 였다는걸 인정하고 주변인들과 잘지내려면 오히려 딱딱한 자신이 변화 해야한다는걸 깨닫고 ..