일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- iOS 개발 오류
- 데이터베이스 공부
- global soop
- 애플 디벨로퍼 아카데미 후기
- Swift 기능
- 숭실대
- Swift 디자인패턴
- 네이버 치지직
- SWIFT
- 앱 비교 프로젝트
- memoization
- OS
- react
- ObservedObject
- StateObject
- useReducer
- ObservableObject
- 동시성 프로그래밍
- Swift 문법
- 치지직
- 데이터베이스
- Apple Developer Academy @ POSTECH
- swift문법
- 애플 디벨로퍼 아카데미
- 네이버 부스트캠프
- 운영체제
- thread safe
- 소프트웨어분석및설계
- 제앱소
- 애플 디벨로퍼 아카데미 21주차 회고
- Today
- Total
목록전체 글 (285)
사과하는 제라스
출처 : https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 1. 문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 2. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 5 5 2 3 4 1 3. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 1 2..
[정렬 방법] 전체(n개의 값)에서 arr[1], arr[2], ..., arr[n-1] 순으로 기준값(key)으로 두고 바로 왼쪽 값부터 왼쪽에 있는 값들이 key보다 클 경우 한칸씩 오른쪽으로 옮긴다. 작을 경우엔 멈추고 비교대상이던 값의 오른쪽에 key값을 넣어준다. 이 과정을 arr[n-1]까지 진행하면 정렬된다. [정렬 과정] n 크기의 임의의 배열 arr에서 - 1번의 비교 arr[1] 값을 key값으로 둔 후, arr[0]와 비교해서 key값이 작으면 arr[1] = arr[0], arr[0] = key, key값이 크면 arr[1] = key - 최대 2번의 비교 arr[2] 값을 key값으로 둔 후, arr[1]와 비교해서 key값이 작으면 arr[2] = arr[1]로 한 후 (1), ..
[정렬 방법] 전체(n개의 값)에서 가장 왼쪽 이웃한 두 값부터 오른쪽 끝까지 비교하는데 왼>오이면 swap, 아닐 경우 continue한다. 이후 가장 max값을 픽스하고 나머지 값에 대해 이 과정을 진행,... 마지막으로 남은 두 값을 비교하고서 정렬하면 정렬이 완료된다. [정렬 과정] n 크기의 임의의 배열 arr에서(이때, 코드에서 key는 min과 max로 작성하였음.) - n-1번의 비교 arr[0]과 arr[1]을 비교 후 ( arr[0] > arr[1] )이면 arr[0]과 arr[1] swap, ( arr[0] arr[2] )이면 arr[1]과 arr[2] swap, ( arr[1] arr[n-1] )이면 arr[n-2]과 arr[n-1] swap, ( arr[n-2] arr[1] )이면..
정렬 방법 전체(n개의 값)에서 가장 큰 값을 맨 오른쪽 값과 바꾸고, 그 다음엔 맨 오른쪽 칸을 제외한 나머지 값들 중 가장 큰 값을 맨 오른쪽값과 바꾸고, ... 이렇게 바꾸는 과정을 진행하다가 마지막으로 2개가 남으면 그 둘을 비교 후 정렬하면 정렬이 완료된다. 정렬 과정 n 크기의 임의의 배열 arr에서(이때, 코드에서 key는 min과 max로 작성하였음.) - n-1번의 비교 arr[0]의 인덱스 값을 key값으로 둔 후, arr[key]와 arr[1] 비교 후 큰 값의 인덱스 값을 key에 넣고, arr[key]와 arr[2] 비교 후 큰 값의 인덱스 값을 key에 넣고, ... arr[key]와 arr[n-1] 비교 후 큰 값의 인덱스 값을 key에 넣는다. 그 후, 그 arr[key]와 ..
현재 만든 웹페이지에 인터랙션을 활성화시켜보자. 1) 네비게이션 바 기능을 한번 구현해보도록 하자. react-router-dom (네비게이션을 만들어주는 패키지) 을 사용해보도록 하자. 먼저 다음 명령어로 react-router-dom을 설치하자. npm i react-router-dom 2) src에 components와 routes라는 이름의 폴더를 하나씩 만들자. 이후 Movie.css, Movie.js 파일을 components폴더로 옮겨주자. 3) routes폴더에는 Home.js와 About.js라는 파일을 만들어서 2개의 라우터를 생성하자. Home.js는 영화를 보여주는 페이지이고 About.js는 영화 하나에 대한 about페이지가 될 것이다. Home.js의 기능은 현재 우리가 App..
코드를 Cloud에 올릴 것임. 1) 다음 명령어로 gh-pages를 설치함. gh-pages는 웹사이트를 github의 github page 도메인에 나타나게 해준다. npm i gh-pages 2) package.json에 다음과 같이 homepage를 추가함. "homepage": "https://yoondj98.github.io/movie_app/" 3) build를 run해서 build폴더를 생성하고 우리는 그 폴더를 github에 올릴 것임. 다음과 같이 build를 실행하면 build폴더를 생성할 수 있음. 이것을 deploy의 이전 과정인 predeploy에 설정해줄 것임. package.json의 scripts에 deploy와 predeploy를 추가함. npm run build "scr..
1) JavaScript에서는 주로 data를 fetch하기 위해서 fetch 함수를 사용했지만 React에서는 더욱 좋은 함수인 axios를 사용하면 좋다. axios는 일종의 fetch 위에 있는 작은 layer이다. 일단 axios를 사용하기 위해서 axios를 설치하자. npm i axios 2) axios를 통해서 yts라는 영화 페이지에서 영화에 대한 데이터들을 가져올 것임. yts라는 사이트에서 맨밑에 있는 API라는 란에서 movie list에 대한 주소를 긁어오면 되는데 이 사이트가 URL이 자주 바뀜(불법 다운로드 사이트인가 봄.) 그래서 이러한 변화를 적용해주는 방식으로 만들어둔 주소인 다음 URL을 사용할 것임. https://yts.mx/api/v2/list_movies.json ..
state는 보통 동적 데이터(변하는 데이터, 존재하지 않는 데이터)를 이용해서 작업할 때 만들어진다. 이번 Chap에선 props가 아닌 state에 중점을 맞춰서 배울 것임. 1) Food 컴포넌트와 관련된 것들은 이젠 지워도 된다. 또한 App 컴포넌트 또한 이제는 function 컴포넌트가 아닌 class 컴포넌트 형태로 쓸 것이다. 1. foodILike 삭제 2. Food 컴포넌트 삭제 3. Food.propTypes 삭제 4. function App을 삭제 후 다음과 같이 class App 작성 class App extends React.Component{ render(){ return Hi, it's a class Component! } } 여기서 React.Component를 extend..
소수를 구하는 문제에서 가장 흔히, 쉽게 찾아낼 수 있는 방법으로는 에라토스테네스의 체가 있다. 에라토스테네스의 체를 코드에서 적용하는 방법을 설명하자면... 1. 먼저, 구하고자 하는 범위의 boolean형 배열을 만든다. (만약 구하고자 하는 범위가 1~150 중의 소수라면 arr[151]) 2. 이 arr 배열을 true나 false로 초기화시켜주고 그것을 소수라고 생각하자. (boolean형 배열은 정의만 해둔다면 내부 element들은 모두 false로 초기화되어 있다. 그러므로 이를 고려해서 false를 소수라고 두면 간편할 수 있다.) 3. 이때, false를 소수로 정의해두고(즉, 모든 수가 소수라고 설정을 해둔 후) arr[1]만 true(소수X)로 변경해준다.(1은 소수가 아니니까) 4..
출처 : https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 1. 문제 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. *** * * *** N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)×(N/3) 정사각..