![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bxNCzJ/btqFZywQnIJ/TlyeT9hjwuvEXKlKjlnR40/img.png)
스택 스택(stack) - 쌓아놓은 더미, 한쪽 끝에서 자료를 넣거나 뺄 수 있는 선형 자료구조, 후입선출(Last-In First-Out)구조로 가장 최근에 들어온 데이터가 가장 먼저 나간다. push - 스택에 데이터 추가 pop - 스택에서 데이터 삭제 ● 스택의 연산 create() - 스택 생성 is_full(s) - 스택이 포화상태인지 검사 is_empty(s) - 스택이 공백상태인지 검사 push() - 스택에 데이터 추가 pop() - 스택에서 데이터 삭제 peek(s) - 요소를 스택에서 제거하지 않고 보기만 하는 연산 ● 배열을 이용한 스택 구현 배열을 이용해 스택을 구현해 봅시다 ㅎㅎ 1차원 배열을 이용해 스택을 구현할 거고, 위에 적은 연산을 각각 함수로 구현할 겁니다! #inclu..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cugPPV/btqFXIsiIPt/L9gL2eBFMg11HZfaCF74ck/img.png)
오늘은 열거형에 대해 알아보려 합니다!! 열거형 열거형(Enumerations) - 연관된 값을 그룹지어 정의 한 것으로, 코드 안에서 type-safe한 방식으로 그 값들을 사용할 수 있게 해줌. 예) 동서남북 등.. - 특징 enum자체가 하나의 데이터 타입 각 case는 그 자체가 고유한 값 case의 경우 한 줄에 여러개 정의 가능 enum CompassPoint { case north case south case east case west } 이런식으로 한 줄 한 줄 case 작성해도 되고 enum Planet { case mercury, venus, earth, mars, jupiter, saturn, nranus, neptune } 이렇게 한 줄 작성도 가능 합니다 ㅋ ● 열거형 사용 위에서..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/UMld3/btqFk7zwp7h/MkyuVYhwNMU8CtdhazsIkk/img.png)
UIView는 사용자에게 보여지고 상호작용하는 부분인 만큼 정말 중요하다고 할 수 있는데요. 그래서 오늘은 정말 기초적이면서도 중요한 UIView에 대해 살펴보려 합니다. UIView는 UIResponder를 상속받는 class로 스크린 안의 여러 content를 관리하는 객체입니다. 여기서 UIResponder는 이벤트를 응답하고 처리하는 class 입니다. (touchesBegan 등등..) View는 사용자와 인터렉션하는 가장 주된 방식임으로 그에 따른 다양한 책임을 갖습니다. 뷰 그리기, subview 관리, 이벤트 핸들링 등등.. 그리고 뷰는 다른 뷰 안에 중첩되어 뷰 계층을 생성 할 수 있고(부모 뷰 - 자식 뷰 관계), 이는 연관된 콘텐츠를 구성하는데 있어 더 편리한 방법을 제공해 줍니다. ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/DSZEi/btqCBwCewaY/wZCDmYb47r2uXDhWURl8I0/img.png)
앞서 머신러닝에 대해 배웠다면, 이제 본격적으로 딥러닝에 대해 공부해 볼 시간입니다! 딥러닝 하면 많이 들어봤을 CNN RNN을 공부하기에 앞서, ANN, 즉 인공신경망이 뭔지 짚고 넘어가려 합니다. ANN은 Artificial Neural Network의 약자로, 인공신경망을 의미합니다. 인공신경망은 그 이름에서 알 수 있듯이, 뇌에서 영감을 받은 학습 알고리즘 입니다. 각각의 뉴런이 다음 뉴런으로 다양한 세기의 신호를 보내면서 문제를 해결하는 시스템을 모방한 것이죠. 하나의 뉴런이 다양한 뉴런으로부터 신호를 받고 다음 뉴런으로 신호를 보내듯이, ANN역시 똑같은 매커니즘을 거칩니다. 다양한 input data를 받아 각각의 가중치가 곱해지고 bias가 더해져 다음 노드로 전달되는것이죠. 이런 뉴런을 ..
Git에서 원격저장소에 있는 내용을 지역저장소로 가져올 때 두가지 방법을 사용 할 수 있습니다. 하나는 Pull 이고 다른 하나는 fetch인데요. 두 가지 개념을 간단히 설명하면 이렇습니다 ㅎㅎ pull - 원격저장소로 부터 내용을 가지고 온 후 병합 fetch - 원격저장소로 부터 내용을 가지고 온 후 병합X 두 가지 모두 원격저장소로부터 내용을 가지고 온다는 점에서 기능이 유사하지만, 한가지 차이점이 있습니다. 바로 병합을 하느냐 안하느냐의 차이인데요. 당연히 이러한 기능적 차이를 둔 이유가 있겠죠? 보통은 pull을 많이 사용하기에, 왜 기능이 겹치는 fetch라는 기능이 있는지에 대해 설명드리겠습니다. pull을 쓰면 바로 병합을 같이 해버리지만, 만약 fetch를 사용하면 병합을 수동으로 해줘..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Wt2rO/btqB8PgELaQ/k6t7Qkp8WbtzFaZfKexZsK/img.png)
드디어! 깃헙에대해 정리할 날이 오는군요. Github는 대표적인 원격저장소로써, 한마디로 지역저장소(컴퓨터)와 대비되는 개념입니다. 주로 이 두가지 목적때문에 깃헙을 사용 하게되죠 소스코드 백업 협업 깃헙을 사용하려면 당연히 회원가입을 해야겠죠? https://github.com/ 사이트에 가셔서 Sign up 버튼을 눌러 계정을 만들고 로그인 해주시면 됩니다. Github을 이용하려면 Github 사이트를 둘러보며 어떻게 사용하는지, 그리고 각각의 명칭들이 뭘 의미하는지 숙지하고 있으면 좋겠죠? 오픈소스 프로젝트나 다른사람들의 프로젝트를 검색해 보고 싶다면, 네이버, 구글등의 포털에서 검색하는 것처럼 검색창을 이용해 검색하면 됩니다. 참고로 Git도 오픈소스인데, 이렇게 Git이라 검색해서 Git에 ..