본문 바로가기

전체 글202

[Data Structure] 스택에 대해 간단하게 설명하기 CS 이론 관련 면접 준비를 위해 랜덤으로 떠오르는 것에 대해 말해보는 연습을 하고 있다 스택은 후입 선출의 선형 자료구조이다. pop 작업은 스택의 최상단 top에서만 수행할 수 있고 가득찬 스택에 더 넣으려고 하면 stack overflow, 비어있는 스택에서 값을 추출하려고 하면 stack underflow가 발생한다.  자바에서는 stack 클래스를 사용할 수 있으나 stack 클래스 자체는 내부적으로 vector 를 상속받기 때문에 인덱스를 통한 접근이나 수정이 가능하기는 하다. 그래서 후입선출이라는 stack 특성에 위반되는 코드를 작성할 우려가 있으므로 deque 인터페이스 구현체를 사용하는 것을 더 권장한다.  vector 에 포함된 메소드들은 synchronized 방식으로 구현되어 있어.. 2024. 12. 31.
[금융] 코스피와 코스닥에 대해 간단하게 설명하기 코스피와 코스닥은 뭐가 다른 거지 ? 라는 질문에 명확한 문장으로 설명하기 어렵고 느낌만 알고 있어서 정리해본다. 기업의 성장 가능성을 판단하고 주식 투자를 수행할 때 우리는 상장된 기업의 주식만 사고 팔 수 있다.쉽게 말하자면 마트에서 물건을 들여오는 절차를 거친 물건이어야만 우리가 구매할 수 있는 것처럼 기업도 주식을 사고파는 시장에 상장된 기업이어야만 우리가 거래할 수 있다는 말이다.  기업은 주식 투자자들에게 자금을 조달 받기 위해 이 시장에 진입하는 상장 과정을 거쳐야 하고 상장 여부는 한국 거래소에서 담당한다. 한국거래소의 심사를 거쳐 상장이 승인된 기업의 주식만 거래할 수 있으며 상장된 주식이 거래되는 시장을 크게 두 가지로 나눌 수 있는데 이때 코스피와 코스닥으로 나눈다.  코스피는 198.. 2024. 12. 31.
[AI/ML] 선형 기계학습 알고리즘 - 지도학습 (KNN, 의사결정 트리, 랜덤포레스트, LDA, SVM) 선형 기계학습 지도학습 알고리즘> 지도학습 알고리즘>> k-최근접 이웃 알고리즘>> 의사결정 트리 >> 랜덤 포레스트>> 선형 판별 분석 >> 서포트 벡터 머신 k-최근접 이웃 = k-NN 알고리즘- 가장 단순한 머신러닝 알고리즘- 저장된 학습 데이터 셋에 대한 판별- 분류하고자 하는 데이터와 가장 이웃한 데이터 클래스들을 기반으로 클래스를 판별한다 - 간단한 계산, 조정 필요 없음 = 개념 증명 실험을 위해 채택- k=3 ~ k=5 그래프에 러닝 클래스 0과 러닝 클래스 1이 분포하고 있을 때테스트 데이터의 위치에서 가장 가까운 러닝 데이터 k개의 클래스를 기준으로다수결이 투표를 통해 테스트 데이터의 소속 클래스를 판단한다 결정 경계 decision boundary구분된 클래스를 기준으로 결정 경계를 .. 2024. 11. 30.
[terminal] 확장자 없을 때 실행 파일 구분 (파일 권한) 사용자의 설정에 따라 색은 다르겠지만 .json 파일이 아닌 나머지 파일들을 확인하고자 하는 경우 (현재 이미지에서는 녹색) 디렉토리라고 판단하고 cd 명령어로 이동하려고 하면 not a directory 라고 오류가 발생한다 그래서 편집기로 열어보면사람이 해석할 수 없는 내용이 들어있다 이런 경우 실행파일일 확률이 높다정확하게 확인해보기 위해 ls 명령어에 -l 옵션을 주어 확인해보았다첫 번째 rwx는 소유주의 파일 권한인데 x 권한이 포함되어 있으니 실행 가능한 파일이다 확장자가 파일명에 포함되어 있지 않더라도 이렇게 구분할 수 있다 실행하고자 할 때는 sudo ./{파일명} 형태로 작성해줘야 한다sudo를 대부분은 생략해도 되지만 간혹 제대로 동작하지 않는 경우가 있으니 sudo를 붙이는 것이 편하다 2024. 11. 27.
[terminal] wsl 에서 reverse search 하는 방법 wsl 에서 ctrl r을 사용하면 방향키로 직전 명령어를 확인할 수 있던 것과 유사하게 역순방향으로 조회 가능 키워드를 입력하면 이전에 입력했던 것 중 키워드를 포함한 것이 자동완성된다 2024. 11. 27.
[terminal] cscope 디렉토리에 만들기 분석하고자 하는 파일들이 들어있는 디렉토리로 이동해서 아래 두 명령어를 입력해주고    find ./ -name '*.[cCsShH]' > file_list: 현재 디렉토리(./)와 하위 디렉토리에서 C 언어 소스 코드 및 관련 헤더 파일을 검색.[ ] 형태가 대상 확장자를 지정한 것file_list 라는 파일에 찾은 파일의 경로를 저장  cscope -i file_list: c언어 소스 코드 분석 도구인 cscope의 -i 옵션은 특정 파일(file_list)에 명시된 파일 목록을 읽어들여 cscope 데이터베이스를 생성  vim에서 :cscope find 또는 :cs find 를 이용해서 검색을 수행할 수 있다 2024. 11. 27.