| 니앙팽이 - 멀티스레딩 | 0 | 하드웨어와 캐시 메모리
·
CS/OS
⏱️ 0. 하드웨어 📄 1. 프로세서(CPU) : 명령어 처리를 위한 하드웨어 1). CU (Control Unit) 프로세스 형태로 메모리에 올라간 명령어 주소들중PC, IC가 가르키는 주소의 Instruction code를 "인출, 해독"한다.명령어 실행에 필요한 "제어 신호" RAM, ALU, I/O에 보내는 장치2). ALU 연산을 수행하는 장치3). Register RAM이외에 CPU내부에 내장된 기억장치, 엑세스 속도가 가장 빠름Instruction Register (IR)프로세스 형태로 메모리에 올라간 명령어들 중 현재 수행중인 명렁어를 저장한다Program Counter (PC)6502에선 16bit 레지스터로프로세스 형태로 메모리에 올라간 명령어들 중 다음에 수행해야 하는 명렁어를 저장..
[프로그래머스 2019 KAKAO BLIND RECRUITMENT] (level2) 후보키
·
PS/알고리즘
회고1. 그냥 같은 row끼리 Concat하면 되는데 Join을 해버렸다. 정신이 어떻게 된것 같다.그래서 미친듯이 많은 재귀를 돌리고 메모리가 터졌다..2. 비트셋을 이용해 본것은 처음 3. vector> 내 원소들간 중복제거를 연구해봐야 겠다.4. 프로그래머스에 전역 변수 선언을 하는것도 한번 참고해 보자.5. 이상한 반례 : 다음 테이블의 후보키는 전부 가능한거 아닌가? 근데 막상 풀었을때, 후보키는 1개 밖에 사용 못했다.학번이름전공학년"100""ryan""music""2" #include using namespace std;vector CandiKey;int ColNum = -1;int RowNum = -1;int solution(vector> relation) { int answer = ..
[프로그래머스 2019 KAKAO BLIND RECRUITMENT] (level1) 실패율
·
PS/알고리즘
1). double 같은지 비교https://www.acmicpc.net/blog/view/37double 끼리 같은지 비교할때, abs(a - b) 이렇게 해야 한다.그런데 여기서 좀 충격인게 위 글을 보고 1e-9 (0.000000001) 의 오차를 가지게 했는데실제 실행시킬때 테케 통과가 안되는 문제가 있었다. 그래서 EPS를 1e-15 까지 더 줄이니 통과 했다.2). 풀이#include #define x first#define y secondusing namespace std;const double DOUBLE_OFFSET = 1e-15;bool comp(const pair& lhs, const pair& rhs) { if(abs(lhs.x - rhs.x) rhs.x;}vector sol..
[프로그래머스 2019 KAKAO BLIND RECRUITMENT] (level2) 오픈채팅방
·
PS/알고리즘
정말 오래간만에 알고리즘 문제를 풀어봤다.PS 실력은 옜날과 비교할때는 저점이 되었지만 C++ 언어 자체는 김포프님 언매니지드 강의 듣고 나서 이해는 더 잘된듯. #include #include #include #include #include using namespace std;// hashSet == unorderd_map 사용 // UID 와 string 매핑 // 레퍼런스 변경void Change(unordered_map &ud, const string& uid, const string& repN) { // TODO user에 있는 string을 찾아서 교체, 레퍼런스 교체 ud[uid] = repN;}// UUID & Enter/Leave// UUID & 01010// UID..
| 니앙팽이 - C# | 2 | 참조 전달 [Ref & Out]
·
Language/C#
🧑🏻‍💻 2. C# 값타입 Call By Reference 함수의 Output은 꼭 Return으로 받지 않아도 된다. 바로 "Call ByReference" C 포인터를 처음 배우게 되면 함수의 인자를 포인터로 보내는 방식을 기억할 것이다.나아가서 C++에선 & 참조 연산자로 Not Nullable 레퍼런스 접근이 가능했다.어쨌든 핵심은 Swap(a, b)를 구현할 때, Call By Reference 를 사용하고리턴이 없는 함수라도, 인풋이 되고 아웃풋이 가능하게 만드는 테크닉으로 사용 가능하다.// Call By Value : 인자는 외부에서 받아온 녀석이랑 다른녀석이다.// 다시 말하면 외부 값의 원본이 아닌 복사본이 들어 와서.. 이 스왑은 작동되지 않는다.void Swap(int a, i..
| 니앙팽이 - C# | 1 | 메모리 [ Stack&Heap / Value&Reference Type / Struct&Class / Boxing&UnBoxing / Garbage Collector ]
·
Language/C#
🧑🏻‍💻 1. Memory 메모리 : 실행된 애플리케이션이 상주하는곳 CPU : 명렬어 처리를 위한 하드웨어 1. Stack과 Heap에대해 설명해보시오 2. Stack과 Heap이 어디에서 저장되는가?3. 어떤것이 Stack에 저장되고 어떤것이 Heap에 저장되는가?4. Stack과 Heap 사이즈에 대해 설명해보세요5. Stack과 Heap메모리의 Deallocate 방식에 대해 설명하세요6. 원시 타입과 참조 타입 은 메모리 각각에 어디에 저장 되는가?7. 원시 타입도 Heap에 저장될 수 있을까?8. string은 Stack에 저장될까, Heap에 저장될까?9. 값타입과 참조타입에 대해 설명해보세요10. Call By Value & Call By Reference11. 값 복사, 참조 ..
팥쥐 팬아트/만화
·
그림그리기
1. 랏쿄 첫 팬아트 랏쿄 - 나무위키 이 저작물은 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다. (단, 라이선스가 명시된 일부 문서 및 삽화 제외) 기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권 namu.wiki 2. 그레이 만화 팥쥐/등장인물 - 나무위키 엄마가 죽기전까지 문신이랑 오토바이, 담배는 절대 금지야!! namu.wiki 3. 깃허브 프사의 정체
| 니앙팽이 - IoC Container | 2 | 의존성 주입과 제어권 역전 (Dependency Injection & Inversion of Contol)
·
CS/SW 공학
♽ 1. DI & IoC 📄 1. 의존성 주입/관계 주입 (Dependency Injection) 의존 관계를 가지는 방법은 다음 경우가 있겠다. "A.cs 내에서 new()를 통한 객체 생성으로 의존 관계"를 만들수도 있지만. "new()객체를 다른 외부의 코드 B.cs에서 생성하고 A.cs에 주입(객체 전달)"을 하는 방식이 있겠다. 대표적으로 생성자를 통해서, Setter함수를 통해서, 인터페이스 Setter로 일괄 처리가 가능할 수도 있겠다. 여기서 DI(의존성 주입) 이라 함은 후자의 방식이 되겠다. 즉, 1). Injection : 주입을 한다? Caller/Client(A.cs)에서 Service(인스턴스)를 생성하는게 아니라 Injector(B.cs)라는 외부 클래스에서 주입 되는 방식. ..
| 니앙팽이 - IoC Container | 1 | 의존 역전 원칙 (Dependency Inversion Principle)
·
CS/SW 공학
♽ 0. Dependency Inversion 📄 1. 용어 1). Dependency : 의존성이란? 한 클래스가 다른 클래스를 참조할때 의존성이 있다고 말할 수 있다. A는 B에 의존적이다 Diagram A가 B를 멤버로 가지고 있거나A메소드에서 B를 패러미터로 이용하거나 리턴한다던지.B의 메소드를 사용한다던지어쨌든 A에서 B를 사용하면~ 2). DIP (Dependency Inverse Principle) 좌 : DIP없이 의존한 관계, 우 : DIP를 적용해 추상적인 개념에 의존함 ⓐ 의존 역전 원칙 이란? 구체적인 타입에 직접 참조(의존)를 하는것이 아닌 추상적인 타입을 참조(의존)하자라는 것. (Depend upon abstractions, Do not depend on concrete) 즉,..
| 니앙팽이 - DB | 9 | SQL - DCL(데이터 제어어)
·
CS/DB
9 DCL 데이터 제어어 # SecuIntegrecover 병 🤣 데이터의 보안,무결성,회복, 병렬 제어를 정의하는데 사용하는 언어다. 1. GRANT / REVOKE /****************************************************** * 기본형 ******************************************************/ GRANT {ALL, SELECT, INSERT, DELETE, UPDATE, ALTER} ON _TABLE_ TO _USER_ID_ [WITH GRANT OPTION]; REVOKE {ALL, SELECT, INSERT, DELETE, UPDATE, ALTER} ON _TABLE_ FROM _USER_ID_ [CASCADE]; /..