일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Blockchain
- viewcontroller
- Algorithm
- Crash
- .dsym
- ethereum
- Mining
- ios
- 프로그래머스
- External Call
- reentrancy
- 분산원장
- Report
- solidity
- 알고리즘
- Xcode
- dsYM
- 암호화폐
- view 이동
- pow
- DPOS
- DEFI
- 블록체인 기술
- 블록체인
- PBFT
- 이더리움
- 재진입공격
- POS
- 비트코인
- 백준
- Today
- Total
목록분류 전체보기 (65)
개발하기좋은날
- 문제 두 개의 배열(base, sample)을 입력받아 sample이 base의 부분집합인지 여부를 리턴해야 합니다. - 조건 시간 복잡도를 개선하여, Advanced 테스트 케이스(base, sample의 길이가 70,000 이상)를 통과 const isSubsetOf = function (base, sample) { // 값이 있으면 COUNT +1 길이만큼 있으면 RETURN TRUE // 배열 값을 정렬 // 숫자 크기 비교 38 55 이후X // 있다면 BASE 원소 제거 // 가운데 숫자 비교해서 // 처음 과 끝 사이에 포함되는 숫자인지 판별 // 가운데 처음 끝 어디서 가까운지 판별해서 찾기 시작 // 왼쪽 탐색인지 오른쪽 탐색인지 구별 base.sort((a, b) => a - b);..
피보나치 수열은 아래와 같은 특징을 가지고있다 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1입니다. 그 다음 2번째 피보나치 수부터는 바로 직전의 두 피보나치 수의 합으로 정의합니다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... 재귀 형태로 호출시 아래와 같이 트리 구조로 호출이 되면 O(n^2) 형태로 표현이 된다 위 그림 처럼 사용시 불필요한 메모리를 차지한다 아래 그림처럼 불 필요 한걸 제거한다면 O(N) 형태로 아래와 같이 코드 작성이 가능하다 function _fibonacci(n, memo) { if ((memo[n] != 0) && (memo[n] != undefined)){ // 기록한거 사용 return memo[n]; } else // 기록이 없을시..
디버깅할 iPhone 연결 ".txt" file -> ".crash" 바꾼다 Xcode 에서 devices and simulators 열기 device 선택하고 device Log 를 선택 디바이스 윈도우 탭에 .crash file를 drag and drop 기호화된 정보들을 확인 ** 코드와 클래스파일을 알려주지않을수있다 디테일한 정보를 보고싶다면 아래 링크를 참조 출처: https://devureak.tistory.com/16
jjhyuk15.medium.com/ios-dsym-%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80-69516fa7ce99 iOS dSYM 이란 무엇인가 앱스토어에서 크래쉬로 인해 리젝을 당하면 크래쉬 리포트를 함께 준다. 처음 따악 열어보는 순간 이상한 숫자들만 가득한 것을 확인할수 있다. 이럴때 필요한게 바로 dSYM이란 파일이다. 근데 dS jjhyuk15.medium.com
기호화된 Crash Report 파일은 복호화한다면 정확한 에러 위치를 확인 할 수도 있다 복호화 하기위해서는 4가지 종류의 파일이 필요하다 .dsym 파일 symbolicatedcrash .app 파일 .crash 절차는 아래와 같다 1. Crash Report 확장자 crash.txt -> crash.crash 형태로 변경 한다 2. symbolicated 폴더를 만든다 3. crash.crash 파일을 copy symbolicated 폴더에 paste 4. Crash 발생한 Xcode 프로젝트를 열고 xcode -> window -> orgnizer 또는 xcode -> product -> Archive 이동 5. Crash 발생한 빌드를 선택하고 "우 클릭" -> "Show in the Finde..
ViewConroller 를 제거하는건 쉽다 self.dismiss(animated: false, completion: nil) ViewController에서는 view는 스택으로 쌓이게된다 그리고 여러 view 중 rootView 가 존재한다 rootView는 제거가 되지않는 뷰로 이걸 이용해서 몇가지 응용이 가능하다 일단 처음 어플리케이션을 시작을 하게되면 시작되는 ViewController 가 rootViewController 된다 (예를들어 스토리 보드에서 "->" 표시를 가지고있으면 rootView가 될수있다) 1. rootView 를 다른 ViewController로 지정하기 2. rootView를 뺴고 다른 ViewController 제거하기 rootView를 지정하는법은 두가지가 있다 //..
ViewController 사이 6가지 전송 방법이 있다 property (A -> B) segue (A -> B) property와 함수 (A A(xib) 로 이동할떄 // M class ViewController: UIViewController { @IBAction func nextButton(_ sender: Any) { // 이동할 xib 컨트롤러 변수를 생성하고 해당 컨트롤러 프로퍼티 변수를 초기화 한다음 present로 호출 let vc = xib_AController(nibName: "xib_AController", bundle: nil) vc.tmpInt = 1 self.present(vc, animated: true, completion: nil) } } - 결과 버튼을 클릭했을때 xib..