적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

반응형

분류 전체보기 592

[Swift] String 문자열 다루기

1. 문자열 단순구현 유형 ex) 카카오 기출문제 - 신규 아이디 추천 (7단계에 걸쳐 사용자가 만드려는 아이디 규칙에 따라 수정해 새로운 아이디 추천) 기본 String 관련 함수들 잘 정리해두고 복습 equals length uppercase lowercase indexof 문자열 내 다른 문자열 존재하는지 판단할 때 substring 스트링 일부 추출 replace 문자열 일부 찾아 대체 - replaceoccurencesof trim 앞뒤 공백 제거 함수 compareTo 두 문자열의 아스키 순서 비교 (알파벳 순서 비교) split containts charAt startsWith endsWith 2. 문자열 + 기타 알고리즘 유형(해시, 정렬, DFS 등) ex) 카카오 문제 신고 결과 받기 ..

Algorithm/참고 2022.01.10

[Swift 알고리즘] Programmers x만큼 간격이 있는 n개의 숫자

Level 1 연습문제 x만큼 간격이 있는 n개의 숫자 문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 - x는 -10000000 이상, 10000000 이하인 정수입니다. - n은 1000 이하인 자연수입니다. 모범 답안 func solution(_ x:Int, _ n:Int) -> [Int64] { var result = [Int64]() for i in 1...n { result.append(Int64(i * x)) } return result } 내 코드 func solution(_ x:Int, _ n:Int) ..

[Swift 문자열] Programmers 핸드폰 번호 가리기

Level 1 연습문제 핸드폰 번호 가리기 문제 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한조건 phone_number는 길이 4 이상, 20 이하인 문자열입니다. 모범답안 😊 func solution(_ phone_number:String) -> String { return String(repeating:"*", count:phone_number.count-4)+phone_number.suffix(4) } 오우.. 이런 방법이..! swift에서도 String을 저렇게 ..

네트워크 기초

네트워크란? 노드들이 데이터를 공유할 수 있게 하는 디지털 전기통신망의 하나. 즉, 분산되어 있는 컴퓨터를 통신망으로 연결한 것. 서로 연결되어 있는 하나의 통신망 네트워크에서 여러 장치들은 노드 간 연결을 사용하여 서로에게 데이터를 교환한다. *노드 : 네트워크에 속한 컴퓨터 또는 통신 장비를 뜻하는 말 전 세계의 네트워크가 유기적으로 연결되어 동작하는 통합 네트워크가 바로 인터넷. (인터넷은 네트워크 망의 한 종류. 세상에서 가장 큰 네트워크 통신망) www (world wide web) 일반적으로 웹이라고 하며, 인터넷상에서 쉽게 정보를 찾을 수 있도록 고안된 세계적인 인터넷망으로, HTTP 프로토콜을 사용하기 위한 인터페이스 는 인터넷을 통해 웹과 관련된 데이터를 공유하는 것. 웹서비스 (http..

컴퓨터시스템 2022.01.06

[네트워크] 네트워크 패킷 분석 및 Wireshark 설치 (mac)

Wireshark 설치 및 http 네트워크 패킷 분석 방법 네트워크 패킷(packet) 이란? 네트워크를 통해 전송하기 쉽도록 자른 데이터의 전송단위. 패킷은 제어 정보와 사용자 데이터(페이로드)로 이루어진다. ex) IP 패킷은 헤더와 페이로드로 이루어진다. 페이로드 : 전송되는 실제 데이터. 전송의 근본적인 목적(필요한 정보)이 되는 데이터의 일부분. 함께 전송되는 헤더와 메타데이터 같은 데이터는 제외한 것. 프로토콜 오버헤드 : 네트워크를 통해 대상으로 라우팅되는 데이터와 함께 전송되어야 하는 정보. 올바른 대상에 도달하기 위해 전송중인 데이터에 추가로 보내지는 정보라고 볼 수 있다. 보통 패킷의 시작 부분, 헤더에 저장되어 Header라고도 함. 목적 : 정보 전송의 신뢰성 확보 및 시스템의 안..

컴퓨터시스템 2022.01.06

[iOS] 아이폰 웹뷰 디버깅

아이폰 웹뷰 리모트 디버깅 하는 법 기본 설정 1. 아이폰 [설정 > Safari > 고급 > 웹 속성] 켜주기 2. 맥북 아이맥 등의 MacOS에서 Safari 메뉴 > 환경설정 > 고급 탭 > 메뉴 막대에서 개발자용 메뉴 보기 체크 아이폰 웹뷰 디버깅 1. 아이폰을 연결한 후 아이폰에서 사파리 혹은 직접 개발한 웹뷰앱을 실행 2. MacOS에서 [Safari 상단 메뉴 > 개발자용 > 연결된 iPhone] 에서 현재 아이폰에서 열어둔 페이지 목록 확인 가능 3. 목록에서 디버깅하고 싶은 페이지를 선택하면 바로 디버깅 창이 뜬다. 전체 검색(전역 검색)을 하고 싶으면 Ctrl + Shift + F 를 눌러서 원하는 코드를 찾을 수 있다. 참고 : https://doogle.link/%EC%95%84%E..

[크롬 개발자 도구] 웹페이지 디버깅 전체 검색 하는 법

크롬 자바스크립트 디버깅 웹페이지 js 에서 원하는 코드를 찾고 싶을 떄! 크롬 개발자 도구에서 전체 검색(전역 검색) 하는 법 단축키 윈도우 맥 개발자 도구 창 열기 F12 fn + F12 전체검색 Ctrl + Shift + F Command + Option + F 개발자 도구 창 열어서 전체검색 하면 됨 ㅎㅎ Settings에서 [Preferences > Sources > Search in anonymous and content scripts] 설정해줘야 된다는 말도 있던데 굳이 안해도 검색은 잘 되더라. 꺄아 신기행 >

웹 개발 2022.01.06

[Swift] Array 배열 관련 함수들

초기화 및 선언 배열을 선언할 때 선언과 동시에 값을 넣어 초기화 해줄 때에는, 타입을 따로 명시해주지 않아도 요소들의 타입에 따라 자동으로 타입 추론이 이루어진다. var numArr = [1,2,3,4,5] var strArr = ["hong", "ssup"] 하지만 빈 배열을 선언할 때에는 다음과 같이 타입을 반드시 명시해 주어야 한다. 그렇지 않으면 Empty collection literal requires an explicit type 이라는 에러가 뜬다. var emptyStrings = [String]() var emptyInts: [Int] = [] var emptyArr: [Any] = [] 또한 한 배열에 여러가지 자료형 요소들을 넣고 싶다면 explicit type annotatio..

Algorithm/참고 2022.01.06

[Swift 알고리즘] Programmers 제일 작은 수 제거하기

제일 작은 수 제거하기 문제 설명 정수를 저장한 배열, arr에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열일 경우 배열에 -1을 넣어 리턴하세요. 제한 조건 - arr은 길이 1 이상인 배열 - 인덱스 i,j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 이다. func solution(_ arr:[Int]) -> [Int] { var arr = arr arr.remove(at: arr.firstIndex(of: arr.min()!)!) return arr.isEmpty ? [-1] : arr } 다른 사람의 풀이 보면 'index(of:)' 함수를 많이 썼던데, 현재는 deprecated 되었다고 한다. 대신에 'firstInd..

728x90
반응형