728x90

분류 전체보기 336

[Udemy iOS & Swift Bootcamp] Internal and External Parameter Names

swift 함수에서 아래처럼 external, internal 파라미터를 지정할 수 있다. func myFunc(External Internal: Type){ print(Internal) } myFunc(External: value) 그리고 다른 부분에서 myFunc 함수를 호출할 땐, External 변수에 어떤 값을 넣어야 하는지 위처럼 정확하게 명시해야 한다. 이 때, 아래처럼 _ 키워드를 사용한다면 External 변수명을 안적어도 된다. func myFunc(_ Internal: Type){ print(Internal) } myFunc(value) 살짝 헷갈리지만 기억해두자!

[C++][Programmers][DFS/BFS] 여행경로

https://school.programmers.co.kr/learn/courses/30/lessons/43164 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 항공편을 모두 사용하는 경로를 찾으면 된다. 경로가 여러개면 알파벳 순서가 빠른 경로 한개를 출력하면 된다. *해결법 주어진 항공편을 모두 사용해야 하므로, ICN부터 출발지점 -> 도착지점을 DFS로 탐색했다. 이 때, 경로를 저장해야 하므로 answer 는 stack(vector) 후입선출 구조를 사용했다. 구체적인 방법은 출발지점으로 지정한 문자와 같은걸 찾고, 도착지점을 다시 출발지..

[Unity Associate Programmer 자격증 준비] 1강. 3D 자동차 장애물 피하기 게임 만들기

*Player 시점 이동/회전 방법 1) custom package 불러오기 Asset > Import Package > Custom Package 에서 package 불러오기 2) Scene화면의 Player 시점 이동/회전 오른쪽 클릭한 상태에서 WASD 키를 사용해 화면 포커스 이동. Alt 키 + 오른쪽 드래그로 보이는 화면 xyz 회전 Scene Tool의 View Tool 과 동일한 기능 3) 객체 당겨서 초점 맞추기 객체를 선택한 상태에서 씬(Scene) 뷰에 마우스 커서를 두고 F키를 눌러 초점을 맞출 수 있다. 객체 더블 클릭한 것과 같은 효과 4) Trasform Position reset Trasnform 점 3개 클릭 > Reset Property > Position 클릭 5) To..

[Udemy iOS & Swift Bootcamp] Computed Property(연산 프로퍼티)

*Computed Property: 다른 속성 값으로 해당 속성의 값을 정의하는 것. 아래 condition ID 값으로 condition Name을 반환하는 함수가 있다. 이 때, condition Name을 반환하려면 weatherData를 선언 후 함수로 접근해야할 것이다. 이 부분을 computed Property로 바꾸면 watherData 선언 즉시 condition Name의 값도 선언되어 바로 사용할 수 있다. 참고로 그냥 선언한 conditionId, cityName 같은 stored Property는 메모리 공간을 차지하지만, computed Property는 저장공간을 차지 하지 않는다. 또 계속 값이 달라지므로 var 형으로 선언해야 한다. import Foundation struc..

[C++][Programmers][DFS/BFS] 단어 변환

https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [해결책] 단어가 1개 차이나는 단어를 찾아서 BFS를 계속 돌린다. 이때 탐색 count를 계속 체크해가며 최소 count값을 구해야 한다. 종료조건은 탐색 단어를 찾았을 때와 words배열 끝에 도달했음에도 target단어를 못만났을 경우다. [알아둘 것] 1) INT_MAX는 limits.h를 선언해줘야 한다. 2) 재탐색을 위해 방문체크 했다가 풀어주는 부분. [코드] #include #i..

[Udemy iOS & Swift Bootcamp] API 로 Json 데이터 받아오기. Json Parsing

* Json 이란? : JavaScript Object Notation. 자바스크립트 객체 표기법. : JavaScript 객체를 전송하기 쉽도록 가볍게 표현한 방법. -> Networking을 위해 객체를 Json으로 변경하여 넘겨야 하고, Web에서 받아온 Json 데이터를 객체로 변경하는 Parse 함수가 필요하다. [Json 데이터] { "coord": { "lon": -0.1257, "lat": 51.5085 }, "weather": [ { "id": 804, "main": "Clouds", "description": "overcast clouds", "icon": "04d" } ], "base": "stations", "main": { "temp": 285.22, "feels_like": 28..

[C++][Programmers][DFS/BFS] 네트워크

https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [해결방법] 연결된 네트워크 그룹개수를 찾는 것. DFS 로 탐색하며 count를 늘려주면 된다. 방문체크 배열은 따로 만들지 않고, 방문한 곳을 1 -> 0으로 바꿔주며 재탐색을 방지했다. [알아둘 것] 1) DFS를 한 사이클 끝내고 돌아왔을 때, 컴퓨터의 최대 개수만큼은 DFS를 탐색해줘야 한다 최대 네트워크 수가 최대 컴퓨터 개수이기 때문이다. 2) DFS함수에 if(!computer[n]..

[C++][Programmers][DFS/BFS] 게임 맵 최단거리

문제 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결법 BFS 기본/대표 문제다. 최단거리 찾기 문제이므로 Queue를 이용한 BFS 탐색을 진행하면 된다. 이 때, 구지 방문체크 배열을 안만들고 현재 값에 +1을 하며 값을 변경해주면 더 편하게 구현 가능하다. 알아둘 것 1) BFS 코드 #include #include #include //pair queue using namespace std; int BFS(vector maps){ in..

[C++][Programmers][DFS/BFS] 타겟넘버

https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [문제풀이] 정수들을 순서를 바꾸지 않고 더하거나 빼서 타겟 넘버를 만들면 된다. 예를 들어 1, 1, 1, 1, 1 로 3을 만들려면 아래처럼 하면 된다. +1+1+1+1-1 = 3 +1+1+1-1+1 = 3 +1+1-1+1+1 = 3 +1-1+1+1+1 = 3 -1+1+1+1+1 = 3 나는 트리에서 +, - 가지를 쳐가며 방법을 찾았다. index 0번 부터 5까지 가며 target numb..

[Udemy iOS & Swift Bootcamp] Closure(클로저)

* Closures : 람다식 같은고. : Closure는 named Closure과 unnamed Closure가 있다. named Closure가 일반 swift 함수를 말하고, unnamed Closure는 이름없이 사용하는 함수를 말한다. 일반적으로 Closure라고 하면 unnamed Closure를 뜻한다. 아래 completionHandler로 사용한 handle 함수를 보자. handle 함수를 func 함수로 명시하여 따로 정의해주었다. 이런걸 named Closure라고 한다. 이걸 Closure(unnamed Closure)로 변경하면 다음과 같이 된다. 함수명을 없애고 인자만 남긴 후, in 안에 handle 함수에 있던 내용을 적어줬다. 이렇게 함수명 없이 인자, 리턴, 함수내용을..

728x90