일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- android retrofit login
- jvm이란
- 2022 플러터 안드로이드 스튜디오
- 안드로이드 유닛 테스트 예시
- 플러터 설치 2022
- android ar 개발
- 안드로이드 레트로핏 사용법
- 큐 자바 코드
- 안드로이드 유닛테스트란
- 안드로이드 라이선스
- 안드로이드 라이선스 종류
- 스택 자바 코드
- 안드로이드 os 구조
- Rxjava Observable
- 멤버변수
- 서비스 vs 쓰레드
- 객체
- rxjava disposable
- jvm 작동 원리
- ar vr 차이
- 안드로이드 유닛 테스트
- 서비스 쓰레드 차이
- 안드로이드 레트로핏 crud
- 자바 다형성
- 클래스
- ANR이란
- rxjava hot observable
- 2022 플러터 설치
- rxjava cold observable
- 스택 큐 차이
- Today
- Total
목록개인 공부/Algorithm (8)
나만을 위한 블로그
유클리드는 수학자 이름으로 알고 있는데 호제법이란 단어 뜻이 뭔지 모르겠다. 네이버 사전에선 아래처럼 말한다. 두 정수 또는 두 정식인 a, b가 있을 때, a를 b로 나눈 나머지 a`로 b를 나누고 그 나머지로 a`를 나누는 일을 완전히 나눠질 때까지 계속해서 a와 b의 최대공약수를 구하는 방법. 단 a, b가 자연수일 때 a > b, 다항식일 때는 a의 차수가 b의 차수 이상이어야 한다 다른 건 둘째치고 일단 두 수의 최대공약수를 구하는 방법이란 건 알겠다. 참고로 최대공약수는 영어로 Gratest Common Divisor로 줄이면 GCD가 된다. 그래서 최대공약수 알고리즘 문제 해설을 보면 gcd라고 쓰는 건가 보다. 이제 이 포스팅의 제목인 유클리드 호제법이 뭔지 확인해본다. 위키백과에선 아래처..
검색하기 귀찮아서 따로 모았다. 자세한 내용은 해당 링크로 들어가서 확인하면 될 것 같다. https://velog.io/@blucky8649/%EC%BD%94%ED%8B%80%EB%A6%B0-%EC%BD%94%ED%8B%80%EB%A6%B0%EC%97%90%EC%84%9C%EC%9D%98-%EC%9E%85%EB%A0%A5%EA%B0%92-%EC%B2%98%EB%A6%AC-%EB%B0%A9%EB%B2%95-feat.-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4-%EA%BF%80%ED%8C%81 [코틀린] 코틀린에서의 입력값 처리 방법 feat. 알고리즘 문제풀이 꿀팁 백준 알고리즘 문제를 풀려면 주어지는 입력값에 대한..
공백이 포함된 숫자들을 입력받아서 이 중 최소값, 최대값을 구하는 예제다. min(), max()가 있긴 하지만 이를 사용하지 않고 어떻게 구하는지 확인해 본다. 먼저 공백을 포함해서 여러 숫자들을 받으면 숫자들만 갖고 있어야 하니까 여러 숫자들을 담을 수 있는 리스트를 쓰는 게 나을 것이다. 파이썬으로 작성한다면 아래와 같다. li = list(map(int, input("숫자 입력 : ").split())) m = li[0] for i in li: if i < m: m = i print(m) 사용자에게 숫자를 입력받는데 리스트에 담아야 한다. 숫자만 따로 리스트에 담아야 하기 때문에 공백을 같이 넣는데, 공백을 리스트에 넣을 필요는 없기 때문에 split()으로 공백을 없앤다 리스트의 첫 번째 값을 ..
모 유튜브 재생목록을 통해 파이썬 기초 문법을 적당히 훑고 나니 이 문법을 활용해 문제를 푸는 영상들이 몇 개 있었다. 알고리즘의 흐름 이해가 어려워서 공책에 써가면서 흐름을 이해하려고 해 보다가 나중에 다시 보려면 역시 블로그에 써 놓는 것만한 게 없다고 생각돼서 정리한다. 정리해 놨는데 나중에도 보자 합 구하기 예를 들어 1부터 입력값까지의 모든 숫자를 더해서 출력해야 한다고 가정한다. 즉 내가 5를 입력했으면 1+2+3+4+5를 계산해서 출력하는 것이다. num = int(input("num : ")) # 1 temp = 0 # 2 for i in range(1, num + 1): # 3 temp = temp + i # 4 print(temp) # 5 사용자에게 입력값을 받는다. 이 때 그냥 받으면..
알고리즘 종류를 검색하다 보면 가장 먼저 설명하는 개념이 빅 오 표기법이란 것이다. 이번 포스팅에선 빅 오 표기법이란 게 뭔지 정리한다. 빅 오 표기법에 대해 알기 전에 먼저 시간 복잡도, 공간 복잡도라는 말이 뭘 뜻하는 건지 알아야 한다. 왜냐면 시간 복잡도를 표기하는 방법 중 하나가 빅 오 표기법이기 때문이다. https://ko.wikipedia.org/wiki/%EC%8B%9C%EA%B0%84_%EB%B3%B5%EC%9E%A1%EB%8F%84 시간 복잡도 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 러닝 타임은 여기로 연결됩니다. 매체의 재생·상영 시간에 대해서는 러닝 타임 (매체) 문서를 참고하십시오. 계산 복잡도 이론에서 시간 복잡도는 문제를 해결 ko.wikipedi..
보호되어 있는 글입니다.
유튜브 보다가 문득 떠올라서 알고리즘이 뭔지, 알고리즘과 자료구조 차이는 뭔지 확인하고 정리하기로 했다. 알고리즘의 사전적 정의는 아래와 같다. 어떤 문제의 해결을 위하여, 입력된 자료를 토대로 하여 원하는 출력을 유도하여 내는 규칙의 집합. 여러 단계의 유한 집합으로 구성되는데, 각 단계는 하나 또는 그 이상의 연산을 필요로 한다. 뭔가가 입력되면 어떤 처리가 되어 내가 원하는 출력이 나오게 되면 그것이 알고리즘인 것 같다. 어딘지 딥러닝이랑 비슷한 느낌이 들긴 하는데, 일단 알고리즘이라는 단어의 뜻에 집중한다. 이번엔 위키백과의 내용이다. https://ko.wikipedia.org/wiki/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98 알고리즘 - 위키백과, 우리 모두의 백과사전..
보호되어 있는 글입니다.