불타는 키보드

고정 헤더 영역

글 제목

메뉴 레이어

불타는 키보드

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기
    • 소프트웨어
      • 네트워크
      • 인프라
      • 자료구조 + 알고리즘
      • 운영체제
      • 디자인 패턴
    • 언어
      • Javascript + Typescript
      • Python
      • HTML + CSS
    • 프레임워크+라이브러리
      • Django
      • Express
      • Vue
    • 데이터베이스
      • NoSQL
      • RDBMS
    • 버전관리도구
      • Git
    • 나의 기록
      • 낙서장
      • 그냥 글
      • 초보는 장비탓을 한다
      • 기타 일지

검색 레이어

불타는 키보드

검색 영역

컨텐츠 검색

자료구조

  • 프로그래머스 / 올바른 괄호 / level2 / 파이썬

    2021.12.19 by moonionn

  • [데이터베이스]B tree가 뭐죠?

    2021.06.28 by moonionn

  • 파이썬의 딕셔너리는 어떻게 구현되어 있을까? -해시-

    2021.04.04 by moonionn

  • [python]튜플, 왜 쓰는걸까?

    2021.03.18 by moonionn

프로그래머스 / 올바른 괄호 / level2 / 파이썬

문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. 입출력 예 s answer "()()" true "(())()" true ")()(" false "(()(" false 나의 풀이 스..

소프트웨어/자료구조 + 알고리즘 2021. 12. 19. 20:40

[데이터베이스]B tree가 뭐죠?

인덱싱의 필요성 데이터베이스에서 어떤 데이터를 가져오려 하는 상황을 가정해 봅시다. 이때 모든 데이터를 풀 스캔(처음부터 끝까지 쭉 탐색)으로 가져온다면 데이터를 가져오는 시간은 매우 오래 걸릴 것입니다. 특히나 데이터베이스 시스템은 디스크 기반이라 I/O 작업에서 상당한 시간을 소모합니다. 보통 디스크의 작업 속도가 얼마나 느린지를 가늠하기 위해 CPU, 메모리와 비교하곤 하는데, CPU와 메모리 모두 보통의 경우 나노세컨드 단위가 언급되는 반면 디스크는 밀리세컨드 단위가 소요되기 때문입니다. 디스크는 왜 느린가요? 데이터를 읽기 위해서는 *헤드를 움직여 데이터가 저장된 위치(*트랙)를 찾아야 합니다. 이때 소요되는 시간을 탐색 시간(seek time)이라고 합니다. 그 후 원하는 정보가 있는 *섹터가..

데이터베이스 2021. 6. 28. 04:35

파이썬의 딕셔너리는 어떻게 구현되어 있을까? -해시-

파이썬에는 {} 이렇게 생긴 구조를 dict(딕셔너리)라 부릅니다. 이 딕셔너리는 해시 구조로 이루어져있는데, 덕분에 원하는 키(key)에 따른 값(value)를 바로 추출할 수 있게 설계되어 있습니다. 해시 해시는 공간을 좀 더 사용해 시간을 축소시키며 (공간와 시간을 맞바꾼 기법) 데이터의 양이 어떻든 일반적인 경우 항상 O(1)을 기대할 수 있습니다. 해시는 특정 키(key)를 해시 함수를 통해 해시 테이블의 주소값으로 변경합니다. 이 과정을 해싱(hashing)이라고 합니다. 해시의 효율성 해시 함수는 해싱의 효율성을 결정하는 결정적인 요인입니다. 해시 테이블의 특정 부분만 밀도가 높아서도 안되고, (테이블 사용 효율) 연산도 빨라야 하며, 무엇보다 해시 함수 값의 충돌이 적어야 합니다. 로드 팩..

소프트웨어/자료구조 + 알고리즘 2021. 4. 4. 04:51

[python]튜플, 왜 쓰는걸까?

튜플의 생김새는 아래와 같습니다. data = (1,2) 가장 흔하게 볼 수 있는 생김새는 다른 자료구조 내부에 element로 포함된 모양새입니다. data = [(1,2), (2,3), (3,4)] 그런데 왜 이 튜플 타입을 사용해야 하는걸까요? 튜플 대신 리스트 타입을 써도 괜찮아 보이는데요, 심지어 튜플은 내부 element 내용을 변경할 수도 없습니다! # 이렇게 하면 안되는 걸까? data = [[1,2], [2,3], [3,4]] 튜플이 필요한 이유 결과부터 말하자면 튜플이 필요한 이유는, 튜플은 리스트와 비교해서 더 메모리용량을 아끼고 퍼포먼스를 향상시키는데 도움이 되기 때문입니다. 리스트는 비교적 무겁다 파이썬의 리스트는 다른 언어(ex: C 언어)의 자료구조 중 배열(array) 타입과..

언어/Python 2021. 3. 18. 11:01

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
불타는 키보드 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바