- Видео 227
- Просмотров 258 811
POCU 코리아
Южная Корея
Добавлен 4 июл 2018
POCU(pocu.academy)의 공식 한국어 유튜브 채널입니다.
3200: 모듈(Module) 시스템
POCU 아카데미에서 제공하는 'C++ 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
Просмотров: 680
Видео
3200: 이동 대입 연산자
Просмотров 257Месяц назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
3200: 가비지 콜렉션 2
Просмотров 774Месяц назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
3200: 유니크(Unique) 포인터 만들기 (C++11)
Просмотров 226Месяц назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
3500: 외판원 문제(TSP)
Просмотров 440Месяц назад
POCU 아카데미에서 제공하는 '알고리듬 및 자료구조(Java)' 과목 무료 미리 보기 링크: pocu.academy/ko/Courses/COMP3500
3200: 정렬 안된 맵 2
Просмотров 229Месяц назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
2200: 새로운 안전한(?) 함수
Просмотров 300Месяц назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP2200 )의 무료 미리 보기
3500: A*
Просмотров 6 тыс.2 месяца назад
POCU 아카데미에서 제공하는 '알고리듬 및 자료구조(Java)' 과목 무료 미리 보기 링크: pocu.academy/ko/Courses/COMP3500
3200: 고정 폭 정수형
Просмотров 3302 месяца назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
2200: 정적 vs 동적 라이브러리
Просмотров 3722 месяца назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP2200 )의 무료 미리 보기
3500: 후위 순회 DFS
Просмотров 2252 месяца назад
POCU 아카데미에서 제공하는 '알고리듬 및 자료구조(Java)' 과목 무료 미리 보기 링크: pocu.academy/ko/Courses/COMP3500
3200: static_assert 키워드
Просмотров 2502 месяца назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP3200 )의 무료 미리 보기
2200: 매크로 함수
Просмотров 1922 месяца назад
POCU 아카데미에서 제공하는 'C 언매니지드 프로그래밍' 과목( pocu.academy/ko/Courses/COMP2200 )의 무료 미리 보기
2300: SIMD 브로드캐스트
Просмотров 1552 месяца назад
POCU 아카데미에서 제공하는 '어셈블리 프로그래밍' 과목( pocu.academy/ko/Courses/COMP2300 )의 무료 미리 보기
식당으로 비유하면 어떤 자리부터 서빙해야 최적일지 고민할 시간에 아무대나 서빙했으면 벌써 서빙 끝나고 남았을거란 거임
잘봤습니다🙂
감사합니다!!
난 이 채널을 왜 이제 찾은거지😮
어서오세요 고객님 🤭
재밌어요
1편은 ㅇ벗나요?
죄송스럽게도 무료 공개 비디오에는 포함되어 있지 않습니다.
궁금해져서 검색해봤으나 seasonal gc 관련해서 내용을 찾지 못했습니다. 혹시 말씀하신 최적화 방식이 C# GC 공식문서에 적혀있는 '세대 (generations)'를 이용한 최적화 방식이 맞을까요? 만약 아니라면 관련해서 힌트를 좀 주실 수 있으십니까?
Incremental GC 이거 말씀하시는 거 같은데요.
네 세대별 gc가 그 방식 맞습니다!!
Incremental gc라고도 부릅니다. 다 맞습니다!!
재밌어요
레어 포인터는 없나요?
웰던 포인터도 없더라구요...
@@POCUKorea 하이브 포인터도 없더라구요...
a*는 진짜 꼭 직접 구현해봐야 한다고 생각합니다. 알고보면 가장쉬운 알고리즘이면서 성취감이 장난아니었거든요!!
최근에 강화학습 이용한 외판원 문제 접근법이 나왔었죠 근사이긴 하지만 PointerNet 이용한 tsp vrp 문제 접근법이 상당히 많이 연구되고 있는
C++의 표준을 정리해 둔 사이트, cppreference의 'Fundamental types (기본 타입)'라는 문서에선 동영상에서 소개한 자료형들에 대해 조금 더 구체적인 사양을 서술하고 있습니다. 영문으로 적혀있어, 번역과 함께 이해를 돕기 위한 역주를 달아보았습니다. <번역> [표준 정수 자료형] int - 기본적인 정수 자료형입니다. short, long과 같은 길이 수식어(length modifiers)가 하나라도 사용된다면 int는 굳이 작성하지 않아도 됩니다. 길이 수식어를 사용하지 않는 경우, int 자료형은 최소한 16비트의 공간을 할당받아야 합니다. 그러나, 32/64비트 시스템에선 최소 32비트의 공간을 할당할 것을 권장합니다. (역1: 아래의 [수식어]에서 설명드리겠지만, short, long은 그 자체로 자료형이 아니라 int에 붙이는 수식어, 그 중에서도 할당될 공간의 크기 지정하는 '길이' 수식어입니다. 따라서 여러분께서 선언해오신 short, long은 사실 short int, long int였던 것입니다.) (역2: 마지막 문장 '32/64비트~'의 원문은 'it is almost exclusively guaranteed to have width of at least 32 bits'라고 적혀있습니다. 'almost'가 적혀있는 점에서, 최소 32비트가 할당됨이 확실하게 보장됩니다~ 라고 말할 수는 없는 모양입니다. 저도 자세히는 모르겠지만, 아두이노나 라즈베리 파이 같이 메모리에 제약이 많은 환경을 위해 여지를 남겨둔 것이 아닐까하는 생각이 듭니다.) [수식어] 기본 정수 자료형에 쓰일 수식어들입니다. 수식어를 배치하는 위치는 자료형의 앞이든 뒤든 상관없습니다. 수식어는 부호 수식어, 길이 수식어의 두 그룹으로 나뉘며, 각 그룹에서 하나씩 골라서 사용할 수 있습니다. (역3: 각 그룹에서 하나씩 골라서 사용할 수 있다는 말은, unsigned short int는 허용되지만 unsigned signed int는 허용되지 않는다는 뜻입니다. 후자의 경우엔 의미상으로도 말이 안된다는 점이 바로 와닿으시죠? 그런 이야기입니다.) [부호 수식어] signed - 함께 쓰인 자료형은 부호가 있는 범위의 값을 표현할 것임을 의미합니다. (부호 수식어를 사용하지 않을 경우 signed가 기본으로 채택됩니다.) unsigned - 함께 쓰인 자료형은 부호가 없는 범위 즉, 양의 범위만을 표현할 것임을 의미합니다. [길이 수식어] short - 이 수식어는 '메모리 공간을 절약하겠다'는 의미를 갖습니다. 최소한 16비트의 공간이 할당됩니다. long - 최소한 32비트의 공간이 할당하겠다는 뜻입니다. long long - 최소한 64비트의 공간을 할당하겠다는 뜻입니다. 참고: 타입 지정자(type specifiers)와 마찬가지로, 자료형과 수식어를 배치하는 순서는 아무래도 상관없습니다: unsigned long long int, long int unsigned long 모두 동일한 자료형으로 해석됩니다. <마치며> 역2에서도 비슷한 이야기를 했지만, 현대에는 굉장히 다양한 기기들이 존재합니다. 그리고 이러한 기기들 중 특히 메모리에 제약이 많은 것들이 가용 메모리의 용량, 처리 속도를 이유로 보통 C나 C++을 채택하는 것으로 알고 있습니다. 아마 C++ 표준은 이런 기기들에 대한 지원과 호환을 유지하고자 표준에 '최소한' 등의 표현을 사용한 것으로 추측됩니다. 물론, 이런 사정을 C++의 모든 사용자분들이 일일히 고려하기는 어려울테니 표준에 애매함을 느끼고 혼란이 빚어지는 것도 당연하다는 생각이 듭니다. 저 또한 그런 사용자 중 하나였기에, 이렇게 동영상을 보게 된 김에 정리해서 적어보았습니다. 제 나름대로는 납득이 되는 것 같은데 다른 보시는 분들은 어떨지 모르겠습니다. 혹시 제가 틀렸거나 빠뜨린 정보가 있다면 자유롭게 조언 부탁드리겠습니다. 항상 훌륭한 강의와 함께 다시 한 번 깊이 고민할 기회를 제공해주시는 POCU 아카데미에도 감사 인사를 올립니다. 정말 정말 감사드립니다! 😄
좋은 정보 너무너무 감사드립니다!!
PostGis에 함수에 tsp가 있어서 사용하고 있습니다. 물류/택배쪽 개발하는 분들 필수 알고리즘
너무나 듣고 싶지만 현생이 너무 바쁜.. 모든 사람들이 그렇겠쥬..
A*의 두가지 조건중 우선순위는 기존의 다익스트라를 우선하면 되겠죠? 1. 출발점에서의 거리 2. 목적지까지의 거리
결국 보편적인 상황에서 속도가 빠르려면 heuristic이 들어가야한다는 뜻
a* 자체가 heuristic value 까지 활용하는 알고리즘인데
4:42 휴리스틱에 대한 이야기를 영상 마지막에 투비컨티뉴! 로 열어두셨긴 하지만 그래도 여러 맵과 조건이라 하더라도 h가 '과대평가하지 않는' 범위에만 들어가면 '최적경로' 임은 보장되니까 기본적으로 '최적경로를 찾는 일반적인 휴리스틱' 을 A-star의 디폴트라 치고 '최적이 아닐 수 있는 weighted/spatial한 휴리스틱' 들을 그냥 A*가 아닌 특별한 변종이라고 분류하고 싶습니다
훌륭한 인사이트 십니다!!
CH JPS HPA* HAA* RHA* 까지 가다가 결국 그 모든 것들의 기반인 A*는 내손으로 직접 구현해야 최적화가 되는구나 하는 만류귀종을 느끼게 됩니다
경의선인지 호남선인지 지도를 봐야만 이해할수 있는 설명은 피해주세요. 차라리 직접 그려주시는게 좋습니다
어떤 설명에 대해 그렇게 느끼셨나요?
@@POCUKorea 아마 한국에 안 사시는 분 인가 봅니다.
한국에 살아도 경의선과 호남선을 모르는 분들이 요즘 젊은 세대에 꽤 많을거라고 생각해요.
후원이라도 쏘고 떠들어재끼세요 ㅋ
@@devfuner 이번 기회에 알면 되는거 아니에요?
진짜 고퀄강의 ㅋㅋㅋㅋㅋ
좋게 봐주셔서 감사합니다. 더더욱 퀄리티를 높이기 위해 노력하겠습니다!!
이거 물류 tms 에서 배차 할 때 사용하는데... PostGis에 구현되어 있어서 그냥 쓰긴하는데, 생각해보면 프로그램 개발해서 돈 벌기는 생각보다 쉬울 수 있음. 이 알고리즘으로 국내 스타트업 중에 tms 개발한 회사 몇개 있죠.
현업물류에 적용할 정도면 CH나 하다못해 Landmark 없이 단순 A*로는 상용화해서 내놓을 수 없습니다. '생각보다' 쉬운 수준으로는 real problem의 스케일을 감당 못해요.
당장 PostGIS의 라우팅 확장도 graph contraction을 써서 탐색을 가속합니다
@@marksmithcollins 배차 20~30개씩 잘라서 Postgis의 다익스트라 함수 사용합니다.
@@marksmithcollins PostGis내부의 다익스트라 함수 소스를 보지는 않았으나 이 함수로 충분히 잘 쓰고 있습니다.
분명 쓰면 참 편하고 가독성이 좋아지는 경우가 많은데 남용하면 갑자기 가독성이 바닥을 치는 마법의 키워드... 타입을 추론하기 어려울 때 유독 심한 것 같더라고요
포인터를 잘 파악할 수 밖에 없게되는..
내 배낭에는 초콜렛이 있지롱~
곧바로 정의로 들어가는 것이 아니라 그러한 정의에 도달하기 까지 사고 과정을 같이 보여줘서 좋네요
에러창 : vector 범위를 넘어갔습니다 벡터 개많은데 어디서 넘어갔다는거야...
힙이라.. 탐스럽군요
>.<
지금이야 AMD 잘 나가는 것 같지만 그땐 참 바보 같은 짓을 많이 했었네요. 인텔이 독주할 만했죠. 그런데 지금 상황을 보면 참 세상 일은 알다가도 모를 일이군요.
지금은 인텔이.... Aㅏ....
@@POCUKorea 인텔이 이젠 AMD의 독주를 막아야 할 때인가요? ㅎㅎ
역사 이야기는 언제나 재밌습니다~
옛날옛적 호랑이 담배피던 시절에는.... 😆
1기가 정도 배열을 미리 만들어두고 재활용 해야디~
허걱!!
if를 쓰면 무조건 else 케이스를 붙이는 Ultimate handle 코딩 방법도 있습니다. 있을 수 없는 경우에 오류 출력을 걸어놓으면 간혹 진짜 걸리는 경우들이 있어서 코딩 실수 혹은 예외상황을 핸들링 할 수 있게 되고, 모든게 다 정상구현인 경우 시스템 혹은 하드웨어 레벨의 오류도 캐치가 되게 됩니다.
좋은 강의 제공해주심에 감사드립니다
사랑합니다. 🤎
아 살짝 젖어버렸어
고객님 여기서 이러시면 안됩니다.
어지간하면 다 고려하고, 안될 가능성 다 고려하고 처리해 두는데... 난 왜 아직 이런지...
빨리 만들어달라면서요?를 위한..?
깔끔하게 머릿속으로 들어왔습니다!
<html>안녕 포코</html>
하이염
제가 인라인 좀 잘 탑니다.
존경합니다!!
인라인 함수에대해 너무 좋은 설명 같습니다
감사합니다!!
2025년에 캐나다 경제는 붕괴한다.
어... 음... 왜... 왜죠?
감사히 잘 들었습니다
리액트 같은 프론트엔드에서 쓰이는 state 라는 게 꼭 static 같아요
매개변수 순서 바꿔도 정상 작동 하지 않나요? 이름만 유지한다면..
is_monday(2024 : year, 10 : month, 1 : day) 위 예시처럼 함수 호출할 때 라벨 같은 걸 달 수 있는 언어들은 그럴 수 있는데 C부류의 경우 함수 선언부 매개변수명은 단순히 코드의 이해를 위한 주석 역할입니다
@@doodleboodle3965 함수 내부 측면에서는 상관이 없지만, 외부에서 호출할 경우 순서를 바꿔버리면 문제가 될 수 있었네요. 이해했습니다.
출근길 보기 딱 좋네요
가끔 보면.. 나만 c/cpp가 재밌나 싶기도 해요.. 주변에 대부분이 파이썬만 써서..
좋은 강의 감사합니다! gets()와 이후 강의에 나오는 f****() 함수(욕 아님 주의) 이용하면 백준 풀 때 정수 십만개씩 입력 받으면서 사용해보면 상대적으로 느린 scanf()를 대체하여 빠른 문자열/정수(공식으로 변환해서) 입력을 가능하게 해주더라고요 ^^; 애용하고 있습니다!
이게 롤러코스터 타이쿤을 이루는 문법인거군요😂
얼쑤~
😢❤
3:50 에서 반환값을 첫번째 매개변수라고 잘못 설명한거 아닌가요?
앗 그렇네요! 부끄럽습니다!
썸네일이 코딩하는 매일의 저의 모습이라 이끌린..
Big Enddian