본문 바로가기

분류 전체보기337

[ 알고리즘 ] 순차 탐색(Linear Search) 이란? 시간 복잡도 계산하기 순차 탐색(Linear Search) 이란? 최악의 경우 시간 복잡도 계산하기 순차 탐색이란 말 그대로 맨 앞에서부터 순서대로 탐색을 하는 알고리즘입니다. 순차 탐색 알고리즘을 적용한 코드를 보겠습니다. ※ 윤성우의 열혈 자료구조 책에서 코드 참고하였습니다. 위의 코드 중 실제로 순차 탐색 알고리즘을 구현하는 부분입니다. for문을 통해 인덱스를 1씩 증가하여 배열를 처음부터 끝까지 목표값과 비교(==)합니다. 그래서 배열(arr)에서 목표값(target)을 찾으면 그 값의 인덱스(i)를 반환합니다. 이제 위의 코드를 토대로 시간 복잡도(Time complexity) 를 분석해볼까요? 데이터의 수 n에 대한 연산 횟수의 함수 T(n) 구해봅시다. 연산 횟수라 했으니까 이 알고리즘에서 사용된 연산자 2020. 7. 4.

좋은 알고리즘을 평가하는 요소(시간복잡도, 공간복잡도) 좋은 알고리즘을 평가하는 요소(시간복잡도, 공간복잡도) 지금 잠시 차🚗를 새로 구입한다고 생각해보세요. 1) 집에서 회사까지 이동만 할 수 있는 차 2) 집에서 회사까지 소음 적고, 연비 좋고, 오르막 길에서 기를 쓰지 않아도 속도내며 이동할 수 있는 차 둘 중에 어느 차를 선택하실 겁니까? 아마 대부분이 2번을 고를 겁니다. 우리는 잘 동작하는 것은 물론이고 성능까지 보장받기 원하니까요. 알고리즘에도 똑같이 적용됩니다. 그저 잘 동작하는 자료구조와 알고리즘(이하 '알고리즘'으로 총칭)을 찾는다면 필요한 기능만 보면 되겠죠. 하지만 성능도 따지고 싶기 때문에 알고리즘을 분석할 줄 알아야 합니다. 크게 두 가지 요소가 있습니다. 특정 상황에서 1) 어떤 알고리즘이 더 빠른가? 2) 어떤 알고리즘이 메모리를.. 2020. 7. 3.

자료구조와 알고리즘 개념 쉽게 이해하기 자료구조와 알고리즘은 무엇인가 '알고리즘은 자료구조에 의존적이다.'라는 말을 들어본 적이 있을 것입니다. 도대체 자료구조와 알고리즘이 뭐길래 저런 관계가 성립이 되는 걸까요? 개념을 파악하기 위해 프로그램의 간단한 정의를 봅시다. 프로그램은 크게 두가지를 합니다. 1) 데이터의 표현 (자료구조) 2) 데이터의 처리 (알고리즘) 1) 데이터 표현에는 데이터를 저장하는 일을 포함됩니다. 여러분은 이미 데이터를 저장해본 적이 있습니다. 정수를 저장하기 위해 int형 변수를 선언하고, 다양한 정보를 활용하기 위해 배열을 사용했죠. 넓은 의미로 int형 변수와 배열은 자료구조의 일종입니다. 2) 그렇게 표현된 데이터(int형 변수나 배열)를 가지고 문제를 해결하는 것이 알고리즘입니다. 간단한 코드를 보겠습니다. .. 2020. 7. 3.

네이버 부스트코스 안드로이드 프로그래밍 프로젝트3) 4서비스-5브로드캐스트 수신자 개념 연습문제 네이버 부스트코스 안드로이드 프로그래밍 프로젝트3_4서비스-5브로드캐스트 수신자 개념 연습문제 네이버 부스트코스 안드로이드 프로그래밍을 수강하고 있습니다. 강의보며 예제를 따라하고 있으나 코드가 이해되지 않아 개념을 익히기 위해 셀프체크지를 만들었습니다. 정재곤 선생님의 안드로이드 프로그래밍 강좌를 참고하였습니다. www.edwith.org/boostcourse-android/lecture/17069/ [LECTURE] 1) 브로드캐스트 수신자 : edwith 들어가기 전에 브로드캐스팅(Broadcasting)이란 방송의 의미로 여러 사람에게 동시에 데이터를 전달한다는 뜻입니다. 여러분이 잘 아는 MBC, KBS 그리고 SBS 방송사의 ... - 부스트코스 www.edwith.org 개념문제 1장 + 답.. 2020. 5. 28.

네이버 부스트코스 안드로이드 프로그래밍 프로젝트3) 1화면전환~3수명주기 개념 연습문제 네이버 부스트코스 안드로이드 프로그래밍을 수강하고 있습니다. 강의보며 예제를 따라하고 있으나 코드가 이해되지 않아 개념을 익히기 위해 셀프체크지를 만들었습니다. 아래 문제는 정재곤 선생님의 부스트코스 안드로이드 프로그래밍 강좌에 나오는 내용 정리를 참고하였습니다. www.edwith.org/boostcourse-android/joinLectures/13160 [부스트코스] 안드로이드 프로그래밍 강좌소개 : edwith - 부스트코스 www.edwith.org 필요하신 분은 출력해서 사용하세요. 문제 2페이지, 답 1페이지 (총3장) 범위: 프로젝트 3) 1 화면전환 ~ 3 수명주기 [부스트코스] 안드로이드 프로그래밍 3 화면 여려 개 만들기 3_1 화면 전환하기 안드로이드 애플리케이션 구성요소 4가지는 .. 2020. 5. 28.

[ 안드로이드 ] 자바 소스로 커스텀 버튼 만들기 2020 안드로이드 스튜디오 자바 소스 파일로 커스텀 버튼(Custom Button) 만들기 xml 파일 없이 java 소스 파일로만 버튼을 상속 받아 새로운 버튼 객체를 만들 것입니다. 버튼을 클릭 시 배경색이 바뀌도록 설정합니다. STEP 1 자바 클래스 만들기 - 저는 클래스명을 CustomButton이라고 했습니다. - AppCompatButton를 상속받습니다. STEP 2 생성자 만들기 - 맥이라면 Cmd + N 단축키 눌러서 생성자를 쉽게 가져옵니다. - 파라미터 Context만 받는 것과 Attribute랑 같이 받는 것 두 개를 불러 옵니다. STEP 3 버튼 초기 모습을 설정하기 위해 init()메서드를 만듭니다. 3.1 res 폴더 - dimens xml 파일을 추가합니다. 16dp .. 2020. 5. 22.

가장 기초 스위프트 문법 개념, 한 장에 셀프체크하기(출력용) 아울렛변수, 액션함수, 함수, 익명 함수, nil, 옵셔널 함수, self, 프로토콜, iOS 문법, 아이폰앱개발, 앱프로그래밍 독학 코드를 이해하지 않은 채 무작정 예제 코드만 베끼다 보면 앱 실행은 되더라도 뭔가 찝찝하더라고요. 예제 없이 새로 코드를 작성할 수 있을까 하는 생각에 막막하기도 하고요... 그래서 간단히 문법만 정리해서 빈칸 채우기식으로 셀프체크지를 만들어 보았습니다. 정말정말정말 기초적인 문법이죠ㅎㅎ 한 페이지라 부담없이 아침에 일어나자마자 1장 풀려구요. 딱 일주일만 하고 애플 공식 문서를 읽어보겠습니다! 참고책: Do it! 스위프트로 아이폰 앱 만들기 이지스 퍼블리싱 26번 답: 논리값, 논리값 🌕 🌖 🌗 🌘 🌑 🌒 🌓 🌔 🌕 오 늘 도 수 고 하 셨 습 니 다 ---------.. 2020. 5. 22.

[2020 안드로이드 스튜디오] 스피너 (spinner) 사용 예제 [ 2020 안드로이드 스튜디오 ] 스피너 (spinner) 사용 예제 Android Studio Version 3.6.3 사용언어 JAVA 스피너를 사용하면 선택하기 전 View1과 선택하는 중 View2가 있습니다. 하지만 SDK에서 미리 만들어 제공하는 레이아웃을 사용하면 간단히 몇 줄의 코드만으로 스피너를 만들 수 있습니다. STEP 1 xml 구성하기 - 스피너 태그를 이용해 XML 레이아웃에 추가하고 어댑터 객체를 만들어 설정합니다. - 스피너에 들어가는 각 아이템은 텍스트만 보여주는 경우가 많아서 안드로이드 SDK에서 미리 제공하는 XML레이아웃을 그대로 사용할 수 있습니다. - ArraryAdapter는 아이템을 위한 여러 개의 데이터를 담아두기 위해 미리 만들어졌습니다. - 스피너는 항목.. 2020. 5. 16.

[2020 안드로이드 스튜디오] 리스트뷰(ListView), 어댑터(Adapter) 이해 &기본예제 [2020 안드로이드 스튜디오] 리스트뷰(ListView) 이해 &예제, 어댑터 개념 Android Studio Version 3.6.3 사용언어: JAVA STEP 1 아이템을 위한 XML 레이아웃 정의하기 - 리스트뷰에 들어갈 각 아이템의 레이아웃을 XML로 정의합니다. ※ 예제 만들 때 파일명을 single로 한다는게 singer로 오타냈네요. 코드가 돌아가는데는 이상이 없습니다. 무시하고 원하는 대로 네이밍 하시면 됩니다. ※ ■ singer_item_list.xml STEP 2 아이템을 위한 뷰 정의하기 - 먼저 하나의 아이템을 정의하는 클래스를 만듭니다. - 아이템을 구성할 요소는 이미지, 텍스트2개 입니다. 즉, 변수 3개를 선언하면 되겠죠. ■ SingerItem.java package c.. 2020. 5. 16.

[토익PDF] 혼동하기 쉬운 형용사 모음 혼동하기 쉬운 형용사 모음 형태가 서로 비슷하지만 뜻이 완전히 다른 형용사가 있습니다. 예로, responsible(책임있는)과 responsive(반응하는)가 있습니다. 두 단어를 구분할 수 없으면 선택지에서 정답을 찾기 어려우니, 혼동하기 쉬운 형용사를는 따로 정리하여 확실히 암기두길 바랍니다. The managers are responsible for the inspection of the assembly line. 관리자는 조립 라인의 검사에 대한 책임이 있습니다. Flowers are responsive to their environments. 꽃들은 주변 환경에 반응한다. reliable 믿을 수 있는 reliant 의지하는 seasonal 계절적인 seasoned 경험이 많은 favorabl.. 2020. 5. 11.

[토익PDF] to부정사 관용 표현 모음 to부정사가 사용된 표현 모음 토익 시험에 자주 출제되는 to부정사를 목적어, 목적격 보어로 취하는 동사부터 to부정사를 수식받는 명사까지 정리하였습니다 to부정사의 수식을 받는 명사 ability 능력 time 시간 place 장소 purpose/goal/objective 목적 plan 계획 way 방법 effort 노력 decision 결정 right 권리 authority 권한 capacity 능력 chance/opportunity 기회 right to vote 투표할 권리 The capacity to communicate effectively facilitates collaboration. 커뮤니케이션 능력은 협업을 효과적으로 촉진합니다. to부정사를 목적어로 취하는 동사 want 원하다 need.. 2020. 5. 7.

[Xcode] 프로젝트 생성시 만들어지는 파일 알아보기 / M와 A 뜻 iOS프로그래밍 2020 Xcode Swift 스위프트_프로젝트의 파일들 (AppDelegate, SceneDelegate, ViewController, Assets, Info.plist 등) 살펴보기 / M와 A 뜻 ■ 프로젝트의 파일들 살펴보기 Xcode에서 프로젝트를 만들면 다음과 같은 폴더와 파일이 자동으로 만들어집니다. 각 파일들은 어떤 역할을 하는지 알아보겠습니다. 1 AppDelegate.swift 앱의 실행 주기(Life Cycle)를 관리하는 내용이 들어있습니다. 앱을 실행하거나 종료 또는 백그라운드를 실행할 때 하는 일들을 관리합니다. 2 SceneDelegate.swift 사용자 인터페이스(User Interface; UI)의 실행 주기(Life Cycle)를 관리하는 내용의 스위프트.. 2020. 5. 6.

[Xcode] 자동 레이아웃 / 제약 조건(constraints) 설정하는 법 iOS프로그래밍 2020 Xcode Swift 스위프트_자동 레이아웃 auto layout 설정하기 / 제약 조건 constraints 설정하는 법 Xcode Version 11.4.1 자동 레이아웃을 설정하지 않으면 아래와 같이 기기의 디스플레이마다 객체가 다르게 표시됩니다. 이를 해결하기 위해 제약 조건을 설정해보겠습니다. 자동 레이아웃은 각 객체마다 제약 조건(constraints)을 설정하여 사용합니다. 제약 조건이란 각 객체가 가질 수 있는 여백, 정령 방법, 다른 객체와의 간격 등을 의미합니다. 간단한 예제로 바로 들어가겠습니다. STEP 1 제약 조건 아이콘 클릭하기 - 스토리보드에서 작업합니다. - 제약 조건을 설정할 객체를 선택하고 아이콘을 클릭합니다. STEP 2 객체의 좌, 우, 위,.. 2020. 5. 6.

[Xcode] Auto Layout Localization 경고 메세지 뜻 iOS프로그래밍 2020 Xcode Swift 스위프트_Auto Layout Localization 경고 메세지 Views without any layout constraints may clip their content or overlap other views. Xcode Version 11.4.1 예제를 따라하다 보면 경고 아이콘(노란 세모)이 나타나는 것을 볼 수 있습니다. 경고 아이콘을 클릭해보면 Views without any layout constraints may clip their content or overlap other views.라는 문구가 나옵니다. 이 경고 메세지는 자동 레이아웃에 관련된 메세지 입니다. 스토리보드에 객체를 배치시켰는데 자동 레이아웃을 설정하지 않아서 객체가 다른 .. 2020. 5. 6.

[토익PDF] 혼동하기 쉬운 형용사와 명사 혼동하기 쉬운 형용사와 명사 형용사처럼 보이는 명사 -al로 끝나서 형용사로 오해할 수 쉬운 명사들이 있습니다. 단어의 뜻과 품사까지 확실히 암기해주세요. approval 승인 proposal 제안 rental 임대(료) referral 추천 initiative 계획 The proposal for a new product has been rejected. 신제품에 대한 제안이 거절되었다. 형용사, 명사 모두 되는 단어 -tive, -al로 끝나서 형용사로만 쓰일 것 같지만 명사도 되는 단어가 있습니다. alternative 대체 가능한, 대안 professional 전문적인, 전문가 potential 잠재적인, 잠재력 objective 객관적인, 목적 One of the team's objectives .. 2020. 5. 5.

[토익PDF] 자주 헷갈리는 분사 관용 표현 20선 자주 헷갈리는 분사 관용 표현 20선 1 astonishing effect 놀라운 효과 2 missing luggage 분실된 수하물 3 rewarding work 보람 있는 일 4 demanding manager 까다로운 관리자 5 lasting impression 변함없는 인상 6 rising cost 상승하는 원가 7 shocking accident 충격적인 사고 8 overwhelming majority 압도적인 다수 9 welcoming party 환영회 10 misleading report 허위 보도 11 qualified candidate 자격을 갖춘 후보자 12 motivated employee 의욕적인 직원 13 revised edition 개정판 14 experienced enginee.. 2020. 5. 4.

[토익PDF] 시험에 자주 등장하는 동의어 20선 시험에 자주 등장하는 동의어 20선 토익 파트6, 7는 지문과 함께 문제를 풀어야합니다. 따라서 그 유형 문제를 빠르고 정확하게 풀려면 많은 어휘를 알고있어야 하는 것은 물론이고, 지문에서 제시하는 힌트와 보기를 잘 매치할 수 있어야 합니다. 즉, 유사한 뜻을 가진 단어를 세트로 암기하여야 합니다. 그럼 토익 시험에서 필수로 나오는 동의어 모음 20가지를 소개합니다. 1 abroad 해외로, 해외에서 overseas 2 accommodation 숙박 시설 lodging 3 accurate 정확한 precise 4 additional 추가의 extra 5 admire 존경하다 applaud 6 advantage 장점, 혜택 benefit 7 publicize 광고하다 boost 8 advertisement.. 2020. 5. 3.

[토익PDF] 요구,주장, 제안, 명령의 의미를 갖는 동사와 형용사 요구,주장, 제안, 명령의 의미를 갖는 동사와 형용사 요구, 주장, 제안, 요청의 의미를 갖는 어휘 뒤에 that절이 오면 그 절에는 should가 생략되어 있기 때문에 동사원형을 써야 합니다. 요구,주장, 제안, 명령'의 의미를 갖는 형용사/동사 + that + 주어 + (should) + 동사원형 요구, 주장, 제안, 요청의 의미인 형용사 important 중요한 essential/necessary/imperative 필수적인 critical 중요한 요구, 주장, 제안, 요청의 의미인 동사 suggest/propose 제안하다 recommend 추천하다, 권고하다 ask/request 요청하다 require 요구하다 insist 주장하다 command/order 명령하다 예상 토익 문제 In orde.. 2020. 5. 1.

[토익PDF] 헷갈리는 토익 단어 -ly로 끝나는 형용사 헷갈리는 토익 단어 -ly로 끝나는 형용사 elderly 나이가 많은 likely ~할 것 같은 timely 시기적절한 orderly 질서정연한 costly 비용이 드는 monthly 매달의 Please complete the survey in a timely manner. 제시간에 설문 조사를 완료하세요. The files in the cabinet must be arranged in an orderly fashion for easy access. 캐비닛의 파일은 쉽게 접근할 수 있도록 순서대로 배열되어야 합한다. Based on the current market trends, it is likely that the company will experience growth in the coming yea.. 2020. 5. 1.

[토익PDF] 빈출 자동사 + 전치사 모음 빈출 자동사 + 전치사 모음 자동사는 목적어를 바로 취할 수 없습니다. 따라서 목적어를 써야할 때는 전치사를 동반합니다. 특정 동사마다 어우리는 전치사가 있으니, 토익 시험에 자주 출제되는 조합은 암기하는 것이 좋습니다. go through 살펴보다 Before signing any business contract, it's crucial to go through it thoroughly. 어떤 사업 계약을 체결하기 전에, 그것을 철저히 검토하는 것이 중요하다. deal with 다루다 As a manager, you will have to deal with various challenges in the workplace, such as conflicts among employees. 관리자로서, 당신은.. 2020. 5. 1.

[토익PDF] 주의해야 할 전치사와 접속사 주의해야 할 전치사와 접속사 의미 전치사 부사절의 접속사 1 ~ 전에 before, prior to before 2 ~ 후에 after, following after 3 ~ 하는 동안 during, for ,over while, as 4 ~ 까지 by, until until, by the time 5 ~ 할 때 at at the time, when 6 ~ 하자마자 upon when, once, as soon as 7 ~ 을 제외하고 aside from, except (for), excluding, excepting except that 8 ~ 을 위해 for so that 9 ~ 인 반면에 despite, in spite of even though, even if, though, although, whi.. 2020. 5. 1.

[토익PDF] to부정사를 목적보어로 취하는 요구/허락 동사 to부정사를 목적보어로 취하는 요구/허락 동사 동사 중에 목적어와 to부정사를 나란히 취하는 동사들이 있습니다. 이 때 목적어는 의미상 to부정사의 주어가 됩니다. [문장 구조] 주어 + 동사 + 목적어 + to 부정사 allow 허락하다 My boss allowed me to leave work early today. 나의 상사는 내가 오늘 일찍 퇴근하는 것을 허락했다. appoint 임명하다 The company appointed Mary to lead the new project team. 회사는 메리를 새로운 프로젝트 팀을 이끌도록 임명했다. cause 초래하다 The pandemic caused many businesses to switch to remote work. 전염병으로 인해 많은 기업.. 2020. 4. 30.

[토익PDF] 헷갈리기 쉬운, 뜻이 다양한 명사 [토익PDF] 헷갈리기 쉬운 뜻이 다양한 명사 한 단어에서 여러 단어가 파생되어 비슷한 모양이지만 품사가 다른 경우가 있습니다. 또한 같은 품사이면서 의미가 다른 단어들도 있습니다. 그런 단어는 흔히 알려진 명사 어미, 형용사 어미가 아닐 수 있기 때문에 문제 풀이시 굉장히 헷갈릴 수 있습니다. 따라서 품사를 예측하기 어려운 단어, 뜻이 헷갈리는 단어는 별도로 정리하여 암기해야 합니다. 그럼 명사 중에 혼동을 주는 토익 빈출 단어를 보겠습니다. 1. objective 목표, objectivity 객관성, objection 반대 The main objective of any business is to maximize profits while maintaining ethical standards. Objec.. 2020. 4. 30.

[스위프트] 만들어둔 뷰 컨트롤러 View Controller 가져오기(예제포함) iOS프로그래밍 2020 Xcode Swift 스위프트 기존 프로젝트에서 만들어둔 뷰 컨트롤러 가져오기 Xcode Version 11.4.1 이미 만들어둔 뷰 컨트롤러를 재사용해야할 때가 있습니다. 그 때 사용된 이미지와 스토리보드 및 소스 코드를 가지고 와야겠지요. 기존 뷰를 현 프로젝트에 추가하는 방법을 알아보겠습니다. STEP 1 뷰의 스위프트 파일추가하기 - 스위프트 파일을 프로젝트 목록 아래에 드래그앤드롭으로 추가합니다. - 프로젝트에 이미 동일한 이름의 파일이 존재한다면 스위프트 파일명을 변경해줍니다. - 뷰에 사용되었던 이미지가 있다면 역시 드래그로 추가합니다. STEP 2 스위프트 파일명 변경하기 - 파일을 추가하면 기존에 있던 뷰 컨트롤러와 이름이 같을 수 있습니다. - 따라서 왼쪽 사이.. 2020. 4. 30.

[스위프트] 탭 바 Tab Bar 컨트롤러 이용해 여러 뷰 넣기(예제포함) iOS프로그래밍 2020 Xcode Swift 스위프트_탭 바 컨트롤러 이용해 여러 뷰 사용하기 Xcode Version 11.4.1 iOS에서 하나의 앱에 여러 화면을 넣을 때 일반적으로 많이 사용한는 것이 탭 바(Tab Bar)입니다. 화면 이동할 때 탭을 클릭만 하면 되기 때문에 쉽게 화면을 전환할 수 있습니다. 이제 간단한 예제를 통해 탭 바 컨트롤러 Tab Bar Controller를 사용하는 법을 알아보겠습니다. ✔️ 예제를 따라하기 앞서 새 프로젝트 생성 방법을 알고 싶으면 링크를 참고해주세요. STEP 1 탭 바 컨트롤러를 스토리보드에 추가하기 - 스토리보드의 아이폰 화면 전체를 드래그한 후 메뉴에서 [Editor -> Embed in -> Tab Bar Controller] 를 선택합니다.. 2020. 4. 29.