공부

    [C++] vector [], at 속도차이와 고찰

    C++ 에서 Vector 컨테이너는 index를 조회하는 두가지 함수를 제공한다. 아래 두개가 그 예시이다. v.at(index); v[index]; 이것의 차이점은 그러면 무엇일까? 우선 인터넷을 찾아보면 쉽게 알수 있는 정보는 다음과 같다. v.at(index)를 사용하면, 범위를 점검하기에 안전하고, v[index]는 범위를 점검하지 않기에 빠르다. 범위를 점검한다? 도대체 무슨 범위를 점검 하는 것일까? 한번 좀더 디테일하게 살펴보도록 하자. 실제로 vector header의 at method를 살펴보면, (line 1557~) input으로 들어온 index가 벡터의 사이즈를 초과하면, throw 하게 되어있음을 확인 할 수 있다. 당연히 이러한 범위 체크 과정이 들어가기에 속도는 느릴 수 밖에..

    [C++] map과 defaultdict

    https://www.geeksforgeeks.org/default-values-in-a-map-in-c-stl/ Default values in a Map in C++ STL - GeeksforGeeks A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions. www.geeksforgeeks.org C++에서 map자료구조는 처음 선언 될 때는 empty하다. 하지만, [] 등으로 조회..

    [python] Class 변수 탐구

    Class 에 대해 알아보다 인터넷에서 조금 이상한 코드를 발견하였다. class Car: color = "" #인스턴스 변수 speed = 0 # 인스턴스 변수 count = 0 # 클래스 변수 def __init__(self): self.speed = 0 Car.count += 1 # 변수 선언 myCar1, myCar2 = None, None # 메인 코드 부분 myCar1 = Car() myCar1.speed = 30 print("%dkm, %d"%(myCar1.speed, Car.count)) myCar2 = Car() myCar2.speed = 60 print("%dkm, %d"%(myCar2.speed, myCar2.count)) # 결과 # 30km, 1 # 60km, 2 자 이 코드로 C..

    Congestion Avoidance and Control (Van Jacobson)

    https://dl.acm.org/doi/10.1145/52324.52356Congestion avoidance and control | Symposium proceedings on Communications architectures and protocolsOverall Acceptance Rate 331 of 2,663 submissions, 12%dl.acm.org오늘날 네트워크 책들에 나오는 congestion control과 관련한 부분들을 그대로 읽어볼 수 있는 굉장히 유명한 논문이다. 앞으로는 논문을 읽게 되면 여기에 리뷰해 보도록 해봐야겠다. 이 논문의 경우 ppt를 만들어 두었기에 첫 게시물로 대체한다. 발표 script도 있으니 참고하길 바란다. 발표자 ppt가 딱히 마땅한 게 없어서 블..

    [Python] mutable 과 immutable (Python의 포인터, 변수에 관한 이야기)

    C언어로 코딩을 처음 배운 필자는 항상 궁금한 것이 있었다. C언어의 경우 function(int argument1, int* argument2) 와 같이 포인터를 명시적으로 해주어 function에서 수정이 일어날 경우 이 함수를 호출한 Caller의 변수들에 영향을 줄지 예상하기가 쉬웠다. 하지만 Python의 경우 어떤방식으로 진행되는지 헷갈렸다. 그래서 이 글을 써보게 되었다. 파이썬은 포인터가 없는 것일까? (이 글은 https://realpython.com/pointers-in-python/ 를 일부 reference해서 쓰여진 글이다. 혹시 헷갈리는 부분들이나 더 알고 싶은 부분들이 있다면 이 글을 읽어보도록 하자!) 결론부터 이야기하면, "Don't really exist"이다. 차차 알아..