분류 전체보기692 [자료구조] String Matching 해당 본문은 학교수업시간에 배운 강의내용을 기반으로 정리하는 요약글 입니다. 정확하지 않은 점이 있으면 지적해주시면 감사하겠습니다. String Matching " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 string에서 내가 원하는 문자열을 찾는 방법을 말한다. 예를 들어 abababcabcabcdabccbaabdabcabcdabcd 라는 Text가 있다고 해보자. 우리는 이중에서 abcabcd 라는 pattern을 찾아야 한다. 수업시간에는 총 3가지 알고리즘을 알려주셨다. 1) Naive 2) DFA (Deterministic Finite Automaton) 3) KMP (Knuth, Morris, Pratt) 이중 가장 빠른 알고리즘은 KMP 알고리즘 이며, 만.. CS/Data Structure (2021-1) 2022. 1. 24. [자료구조] 배열의 성능 분석 해당 본문은 학교수업시간에 배운 강의내용을 기반으로 정리하는 요약글 입니다. 정확하지 않은 점이 있으면 지적해주시면 감사하겠습니다. 배열의 성능 분석 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 배열의 정의부터 살펴보고 시작하자. Array: 동일한 type이 연속된 주소에 저장된다. 같은 배열이라도 값이 한쪽에 모여있을 수 도 있고, 산발적으로 흩어져 있을 수 도 있다. 또 값들이 순서대로 정렬되어 있을 수도 있고 그렇지 않을 수도 있다. 이러한 특성들이 배열의 성능에 큰 영향을 미친다고 한다. 또한 값을 Array에 넣는 방식에 따라서 Search, Insert, Delete의 성능이 달라진다. ● Packed vs Unpacked 원소들이 저장될때 배열의 한.. CS/Data Structure (2021-1) 2022. 1. 24. [서평] Effective C++ : 이펙티브 C++ 저의 돈으로 직접 사서 직접 완독 해본 후 써보는 후기입니다. 따라서 장점은 장점대로 칭찬할 것이며, 단점은 단점대로 언급할 것입니다. Effective C++ 저자 : 스콧 마이어스 출판 : 프로텍미디어 발매 : 2015.03.26 2021/02/25 ~ 2021/04/16 1) 책의 표지 2) 단원별 구성 3) 읽은 소감 우선 저의 글의 앞부분만 보는 분들을 위해 먼저 간단히 3가지에 대해 답해보겠습니다. Q 이 책을 읽기 전에 필요한 수준/ 지식은? => 이 책은 C++을 이미 충분히 숙지한 사람을 대상으로 한 자료구조 기본서이다. 기본 문법 사항들은 알고 있어야 한다. Q 이 책을 읽어야 할 필요성, 어디에 도움이 될까? => C++에 대한 깊은 이해를 돕는다. 내부 작동원리와 많은.. Life/Book Record 2022. 1. 24. [Java] 람다와 익명클래스의 scope 주말에 팀 slack에 재미있는 내용이 올라와 공부후 정리해 본다. 1. 문제 상황 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 내가 읽었던 유명한 자바 책 에서는 람다는 익명클래스 라고 나와있었다. 이는 틀린말이 아니다. 다만 정확하게 "익명클래스 == 람다" 가 아니라는 점에서 문제점이 발생한다. 다음 예시를 살펴보자. anonymous 는 익멱 클래스를 활용한 코드이며, lambda는 람다식을 활용한 코드이다. 두 코드 하는 역할은 동일한데, lambda 쪽에서 number 라는 변수를 사용할려 할면 문제가 발생한다. (" 'number' 라는 변수는 초기화 되어있지 않기 때문" 이라는 경고를 보여준다) 다음 코드의 일부를 살펴보자. private final in.. BackEnd/Java 2022. 1. 23. [Cloud] 실행할 때 고려할 사항들 : 8장 클라우드 세상 속으로 라는 책을 읽으며, 중요한 내용은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 8.1 클라우드 업체 선택 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 클라우드 업체를 고르는 것은 중요한 결정 사항이다. 결정에 있어 중요한 고려사항들을 살펴보자. 1) 사업적인 고려사항들 - 재정적인 생존 능력: 판매 회사가 얼마나 오랫동안 사업을 해왔는가? 재정적으로 안정적인가? 이윤을 내고 있는가? - 운영 능력: 여러 개의 데이터센터와 가은 핵심 자산을 소유하고 있는 적절한 곳에 위치하고 있는가? 만족한 고객들에 개한 참조를 제공할 수 있는가? 서비스 제공자로서의 운영 이력을 가지고 있는가? - 계약 실행력: 운영에 대한 감사를 받고 있으며, 서비스 지향의.. DevOps/Cloud 2022. 1. 23. [Cloud] 클라우드 규모에 맞는 높은 안정성 확보 : 6장 클라우드 세상 속으로 라는 책을 읽으며, 중요한 내용은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 6.1 클라우드 선구자로서의 SOA " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 분산 시스템 분산 시스템에 대한 가장 중요한 핵심은 분산되지 않은 시스템에 비해 장애단일점 이 없다는 사실이다. 즉 일부분의 고장으로 인하여 시스템 전체가 멈추는 일이 없다. 2) 낮은 상호의존성 낮은 상호의존성은 다른 모든 개체들과 독립적으로 동작하는 각각의 컴포넌트들이 별도로 분리되어 구축되고, 테스트되고, 교체될 수 있다는 것이기 떄문에 안정성에 영향을 주게 된다. 장애가 발생하는 상황에 대해 스스로 또 다른 문제를 일으키지 않고 장애상황을 직면하거나, 다른 곳에서 돌아가는 .. DevOps/Cloud 2022. 1. 23. [Cloud] 클라우드 규모에 맞는 디자인과 아키텍처 : 5장 클라우드 세상 속으로 라는 책을 읽으며, 중요한 내용은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 5.1 클라우드와 가장 잘 어울리는 고확장 어프리케이션 패턴 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 이전 이전이란 사용 중인 설치형 어플리케이션을 클라우드에 그대로 옮겨 놓는 것을 말한다. 사용중인 로컬 데이터센터에서 이미 완전한 가상화를 통해 사용성을 극대화 해 놓은 상황이 아니라면, 자체적으로 이러한 어플리케이션들을 운영하는 것 보다는 클라우드 자원을 활용하는 것이 더 저렴하다. 2) 인터넷 규모 인터넷 규모 디자인 패턴은 서비스 첫날부터 실제 엄청난 비용을 들이지 않아도, 유튜브, 페이스북 과 같이 굉장히 많은 사용자들을 감당할 수도 있는 클라우드용.. DevOps/Cloud 2022. 1. 23. [Cloud] 보안과 폐쇄형 클라우드 : 4장 클라우드 세상 속으로 라는 책을 읽으며, 중요한 내용은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 4.1 공개형 클라우드에서의 정보 보안 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 클라우드 도입을 더디게 만드는 보안에 대한 우려 2009년 IDC에서 기업 it 임원들을 대상으로 클라우드 컴퓨팅과 관련된 우려사항들에 대한 조사 1위로 보안이 당첨되었다. 저자는 거의 모든 회사들의 내부 IT 환경만큼 클라우드 컴퓨팅 환경을 안전하게 만드는데 있어, 근본적인 장애물은 존재하지 않는다고 하였다. 암호화된 저장소, 가상 랜, 방화벽이나 패킷 필터등 표준 네트워크 보안 도구들처럼 잘 알려진 기술들을 이용하면 대부분의 이러한 장애물들은 즉시 제거될 수 있다. 2) 주.. DevOps/Cloud 2022. 1. 23. [Cloud] 클라우드 컴퓨팅의 경제적 타당성 : 3장 클라우드 세상 속으로 라는 책을 읽으며, 중요한 내용은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 3.1 클라우드 컴퓨팅의 경제성 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 전통적인 사내 IT vs 콜로케이션 vs 외주 관리 서비스 vs 클라우드 모델 소규모 전자 상거래 어플리케이션을 배포한다고 가정해보자. 책의 시나리오 에서는 3단계 계층으로 설계되어 프론트-어플리케이션-백엔드 데이터베이스로 구성되어있다. 이들을 3년간 운영한다는 가정을 두고 각 케이스별로 계산을 진행하였다. - 사내 IT의 경우 월 861달러 하지만 여기에는 전력, 냉방, 랙공간, 네트워크 대역폭 등 추가사항은 고려되지 않음 - 콜로케이션 배포는 월 1861달러 이렇게 되면 장비를 수.. DevOps/Cloud 2022. 1. 23. [Cloud] 클라우드 컴퓨팅의 분류 : 2장 클라우드 세상 속으로 라는 책을 읽으며, 중요한 내용은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 2.1 클라우드 컴퓨팅의 기술적 토대 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 데이터센터를 활용함으로써 규모의 경제 달성 cloud 를 자동차에 비유해보면 데이터센터는 자동차의 엔진에 해당한다. 보통 데이터센터는 대규모 컴퓨터, 네트워크, 커뮤니케이션 장비를 모아두고 여기에 보안을 갖춘 설비라고 할 수 있다. 가장 큰 규모의 데이터센터를 운영하고 있는 구글, 아마존, MS 같은 회사들은 사용자가 많이 모여이는 곳 가까이이에 데이터센터를 두고있다. 이는 반응시간을 단축하고, 장애발생시 극복기능을 제공하기 위함이다. 또한 데이터센터의 위치를 낮은 가격에 전력을.. DevOps/Cloud 2022. 1. 23. [CODE SQUAD] 주간 회고록 : 2022/1/17 ~ 1/22 주간 회고록 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 코드스쿼드 에서의 2주 차가 지나갔다. 어느 정도 하루 루틴이 익숙해지긴 한 것 같다. 이번 주 우리 조 멤버는 : 케이, 선을로, Shine, Meenzino, 부카, Jay, Lucid, Dave, donggi, Hanse 였다. 이번주 여러 팀원들을 만나 좋았지만, 특히 케이 (외쳐! 케이 god!!) 님 덕분에 즐거운 한 주였다. 뭐랄까? 팀이 팀다운 한주였달까? 아직 서로 어색함이 많지만, 이를 인지하여 항상 먼저 말을 걸어주시고 분위기를 풀어주시면서, 다양한 이야기 거리를 던져주셨다. 개발을 떠나서, 팀에 케이처럼 활발한 분이 있을 때 팀의 사기가 얼마나 좋아지는지 경험할 수 있었다. 개발 역량으로 커.. CODE SQUAD/회고록 2022. 1. 23. [자료구조] Merge Sort 증명 해당 본문은 학교수업시간에 배운 강의내용을 기반으로 정리하는 요약글 입니다. 정확하지 않은 점이 있으면 지적해주시면 감사하겠습니다. 원래 Merget Sort를 증명하려면 Merge의 정확성 부터 증명한 후, 다시 Merge sort를 증명해야하는데, 수업시간에는 Merge의 정확성은 타당하다는 가정 하에 증명해 주셨다. Merge의 정확성 까지 보일필요는 없을거라 하셨다. Recursive Merge Sort 의 증명 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 int MergeSort(int a[], int n) { int h; int b[n]; h = n / 2; // copy a[] to b[] MergeSort(b, h); // b의 왼쪽 절반 정렬 Merge.. CS/Data Structure (2021-1) 2022. 1. 23. 이전 1 ··· 44 45 46 47 48 49 50 ··· 58 다음