분류 전체보기

Algorithm

[leet] Best Time to Buy and Sell Stock

https://leetcode.com/problems/best-time-to-buy-and-sell-stock/ Best Time to Buy and Sell Stock - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Input 배열이 주어졌을 때 최대 이익을 구하는 문제입니다. 배열의 순서가 day라고 가정해서, 최대 이익의 발생값을 구하는 문제입니다. public class Best_Time_to_Buy_and_Sell_Stock { public stati..

Algorithm

[leetcode] twosum (java)

https://leetcode.com/problems/two-sum/ Two Sum - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 풀이법 3가지 1. 중첩 for문을 이용해서 배열의 요소를 차례차례 읽어 간다. => 시간 복잡도 O(N^2)으로 인해 비효율적 2. hashtable을 이용 - 값을 꺼내는데 O(N) 2-i) 아래 예제에서 int[] nums = new int[]{1,2,3,4}; 의 값을 전부 미리 넣어 놓고 값을 찾는다. hashmap에는 ..

Clean Code

[Clean Code] 3장 함수

함수 함수를 안전하고 간결하게 작성하기 SOLID원칙 SRP(단일책임원칙) OCP(개방-폐쇄원칙) LSP(리스코프치환원칙) ISP(인터페이스분리원칙) DIP(의존성역전원칙) SRP 클래스는 하나의 기능만 가진다. OCP 확장에는 열려 있으나 변경에는 닫혀 있어야 한다. 객체지향의 추상화와 다형성을 활용한다. LSP 서브 타입은 언제나 기반 타입으로 교체할 수 있어야 한다. 클래스 상속, 인터페이스 상속을 이용해 확장성을 획득 다형성과 확장성을 극대화하기 위해 인터페이스를 사용하는 것이 더 좋다. 자식 클래스도 부모 클래스의 기능을 구현할 수 있어야 한다. 상속보다는 구현을 많이 이용하라 ISP 사용하지 않는 인터페이스는 구현하지 말아야 한다. 가능한 최소한의 인터페이스만 구현한다. 인터페이스를 뚱뚱하게 ..

OS/Linux

리눅스 명령어 정리1 - 텍스트 처리

인프런 - 리눅스 커맨드 라인 툴 head : 기본 10줄 출력 문서 내용의 앞부분 출력 c : NUM byte만 출력 n : 라인 수 출력, -옵션을 추가로 부여하면 밑에서부터 그만큼 빼고 출력 예 : cat /etc/passwd | head –n -5 : 문서 전체에서 밑에서 5줄 빼고 전체 출력 cat /etc/passwd | head –n 15 : cat은 전체 출력이지만 파이프로 head를 할 수 있다. (15줄만 출력) tail - head의 반대, 기본 끝에서 부터 10줄 문서 내용의 뒷부분 출력 c : NUM byte만 출력 n : 라인 수 출력 (tail에서는 +옵션을 줘야 한다), +5를 준다면? 5번째 줄부터 끝까지 출력한다. f : 추가 되는 내용을 기다리다가 추가되는 내용을 app..

서평

가상 면접 사례로 배우는 대규모 시스템 설계 기초

요즘 페북이, 트위터, 유튜브에 많이 떠돌아다니는 책이며, 지인 + 개발바닥(유투브)에서 추천받은 책이라 꼭 읽어 봐야겠다고 생각이 들었습니다. 아직 서비스 기업을 다니고 있지 않아 대규모 트래픽을 받아 본 경험이 없는 신입 개발자, 구직자들에게 읽기 좋은 책이라고 들었습니다. 책의 목차를 보면 실제 사례를 통해 어떻게 시스템을 설계하며 어떻게 문제를 해결했는지 상세하게 설명하는 것 같습니다. (뉴스피드 시스템 설계, 유튜브 설계, 구글 드라이브 설계.. 이런 제목들 보면) 특히 1장에 나오는 규모의 확장성에 대한 아키텍처는 손으로 직접 그려보는 것이 좋을 것 같아 무작정 노트패드 열어서 따라 그렸습니다. 책 내용을 정리하려다가 내용이 갈수록 복잡+심오 해지는 부분이 있어 이후의 내용은 직접 구매 후 읽..

향찡
'분류 전체보기' 카테고리의 글 목록 (6 Page)