임베디드

임베디드

  • 분류 전체보기 (1142)
    • PL (150)
      • C++ (108)
      • Python (39)
      • Java (3)
      • Kotlin (0)
    • 알고리즘 (462)
      • 암기 (91)
      • 백준 (328)
      • 삼성 (17)
      • 종만북 (4)
      • 프로그래머스 (22)
    • 임베디드 (411)
      • 하드웨어지식 (12)
      • ATmega128 (98)
      • 32F429IDISCOVERY (57)
      • 임베디드리눅스 (15)
      • 리눅스커널스터디16기 (2)
      • 리눅스시스템프로그래밍 (97)
      • 운영체제 (26)
      • 컴퓨터구조 (4)
      • dd (1)
      • ubuntu (81)
      • opencv (18)
    • 드론 (99)
    • TIP (12)
  • 홈
  • 태그
  • 방명록
RSS 피드
로그인
로그아웃 글쓰기 관리

임베디드

컨텐츠 검색

태그

#linuxbirthday_a_message_from_Seoul_Korea !!

최근글

댓글

공지사항

아카이브

알고리즘/암기(91)

  • 11^n 이항정리로 구하기

    2019.11.16
  • 병합정렬

    2019.10.31
  • 점 3개의 방향 알아내기 CCW, CW

    2019.10.31
  • 재귀의 장단점

    2019.10.30
  • 세그먼트 트리

    2019.10.30
  • set 컨테이너

    2019.10.23
11^n 이항정리로 구하기

파스칼의 삼각형을 이용하면 이항계수를 쉽게 구할 수 있다. 쉽게 구한 이항계수를 통해서 11^n도 이항정리로 해결할 수 있는데 풀이는 다음과 같다

2019. 11. 16. 04:02
병합정렬

분할정복의 대표적인 예 merge : 정복, sort : 분할, 2개의 함수로 구성되어 있다 1. stable sort 중 하나로 중복 키 순서가 보장된다 2. 평균, 최악, 최고의 시간복잡도는 동일하게 O(NlgN)이다 3. 임시로 저장해야하는 배열이 있어야하므로 기존보다 2배의 메모리를 잡아먹는다 위 채점은 merge sort로 아래 채점은 heap sort이다 깃허브주소: https://github.com/surinoel/boj/blob/master/merge_sort.cpp

2019. 10. 31. 15:17
점 3개의 방향 알아내기 CCW, CW

x, y 좌표평면에 점 3개가 있고, 넓이를 구함으로써 이어진 점들의 방향이 CW, CCW임을 알 수 있다 [참고] https://www.acmicpc.net/blog/view/27 참고문제: https://www.acmicpc.net/problem/11758 깃허브주소: https://github.com/surinoel/boj/blob/master/11758.cpp

2019. 10. 31. 00:22
재귀의 장단점

단점 > 함수를 반복적으로 호출하면서 생기는 메모리 사용량과 오버헤드로 인해 성능이 저하된다는 점이 있다. 호출이 되면서 리턴할 주소와 내용들을 저장하고, 돌아갈 때도 이를 불러온다는 점에서 시간이 지연된다 장점 > 특정 알고리즘 구현에 대해서는 보다 표현이 자연스러울 수 있다 (가독성) - 퀵 정렬, 병합 정렬 - 팩토리얼 구하기 - 그래프 DFS

2019. 10. 30. 22:21
세그먼트 트리

구간 합을 구할 때 사용하는 유용한 자료구조인 세그먼트 트리다. 구간 합은 데이터가 나열되어 있을 때, 특정 범위에서의 데이터 합을 말한다. 누적합을 구했다는 가정 하에 구간 합은 O(1)의 시간복잡도로 구할 수 있지만, 변경된 사항이 생긴다면 다시 O(N)의 시간복잡도로 누적합을 수정해야 한다. 하지만 세그먼트 트리를 이용하면 수정했을 때도 트리의 높이인 O(lgN)만으로 누적합을 구할 수 있다 1. 세그먼트 트리(누적합) 만들기 리프 노드를 배열 원소를 하고 루트로 올라갈수록 재귀적으로 누적합이 계산된다. 완전 이진트리로 구성하기 때문에 자식 인덱스는 2*부모 + 1, 2*부모 + 2로 구성된다 long long init(int idx, int start, int end) { if (start == ..

2019. 10. 30. 15:01
set 컨테이너

Red black tree 기반의 균형 이진트리로 구성되어 있다. key, value 중 key 값으로만 구성되어 있고, key의 중복은 없다. 기본 정렬은 오름차순으로 선언 시 바꿀 수 있다. 템플릿 인자 2번째에 사용자 정의 정렬 함수를 넣어줄 수 있다. 그리고 insert 함수는 pair 반환형을 가지고 있는데, bool 값을 보고 값이 중복되는지 아닌지를 확인할 수 있다 #include #include #include #include using namespace std; struct cmp { bool operator()(const int &u, const int &v) { return u > v; } }; int main(void) { set s1; s1.insert(10); s1.insert(..

2019. 10. 23. 11:03
1 2 3 4 ··· 16
티스토리
© 2018 TISTORY. All rights reserved.

티스토리툴바