일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 플러터 설치 2022
- jvm이란
- 안드로이드 레트로핏 사용법
- 스택 자바 코드
- 스택 큐 차이
- 안드로이드 유닛 테스트 예시
- 서비스 vs 쓰레드
- rxjava cold observable
- 자바 다형성
- 서비스 쓰레드 차이
- 안드로이드 라이선스
- rxjava hot observable
- 안드로이드 라이선스 종류
- 안드로이드 유닛테스트란
- android ar 개발
- 클래스
- 2022 플러터 설치
- 안드로이드 레트로핏 crud
- jvm 작동 원리
- 멤버변수
- 객체
- 2022 플러터 안드로이드 스튜디오
- 안드로이드 os 구조
- ar vr 차이
- ANR이란
- rxjava disposable
- 큐 자바 코드
- android retrofit login
- 안드로이드 유닛 테스트
- Rxjava Observable
- Today
- Total
목록개인 공부/Algorithm (13)
나만을 위한 블로그
빗 정렬 https://en.wikipedia.org/wiki/Comb_sort Comb sort - WikipediaFrom Wikipedia, the free encyclopedia Interval based sorting algorithm Comb sort is a relatively simple sorting algorithm originally designed by Włodzimierz Dobosiewicz and Artur Borowy in 1980,[1][2] later rediscovered (and given the name "Combsort") byen.wikipedia.org빗 정렬은 비교적 간단한 정렬 알고리즘으로 쉘 정렬이 삽입 정렬을 개선하는 것과 같은 방식으로 버블 정렬을 개선..
정렬 알고리즘 1에서 힙 정렬을 확인할 때 이진 트리, 우선순위 큐를 알아야 힙을 알 수 있다고 했었다. 이 포스팅에선 우선순위 큐부터 무엇인지 알아보고 코틀린으로 구현한 예시를 확인한다.아래는 우선순위 큐에 대한 영문 위키백과다. https://en.wikipedia.org/wiki/Priority_queue Priority queue - WikipediaFrom Wikipedia, the free encyclopedia Abstract data type in computer science In computer science, a priority queue is an abstract data type similar to a regular queue or stack abstract data type. E..
퀵 정렬 https://en.wikipedia.org/wiki/Quicksort Quicksort - WikipediaFrom Wikipedia, the free encyclopedia Divide and conquer sorting algorithm Quicksort is an efficient, general-purpose sorting algorithm. Quicksort was developed by British computer scientist Tony Hoare in 1959[1] and published in 1961.[2] It is still a comen.wikipedia.org퀵 정렬은 범용 정렬 알고리즘이다. 정렬에 일반적으로 쓰이는 알고리즘이다. 특히 큰 분포의 무작위 데이터에 ..
정렬의 뜻은 이 글을 보는 사람이면 모두 알겠지만 사전적 의미는 아래와 같다. 가지런하게 줄지어 늘어섬 또는 그렇게 늘어서게 함, 데이터를 특정 조건에 따라 일정 순서가 되게 재배열하는 일 규칙 없이 막 늘어놓은 것들을 특정 규칙에 따라 정리한다는 걸로 이해할 수 있겠다. 아래는 정렬 알고리즘에 대한 영문 위키백과의 설명이다. https://en.wikipedia.org/wiki/Sorting_algorithm Sorting algorithm - WikipediaFrom Wikipedia, the free encyclopedia Algorithm that arranges lists in order Merge sort In computer science, a sorting algorithm is an al..
각 단어와 브루트 포스라는 단어의 사전적 정의는 아래와 같다. Brute : 짐승, 신체적인 힘(폭력)에만 의존하는Force : 물리력, 폭력 / (물리력을 이용해서) 억지로 ~~하다Brute Force : 억지 기법(무차별 대입해 억지로 문제를 푸는) 모든 방법을 다 동원해서 답을 찾는 알고리즘이라 생각된다.아래는 위키백과에서 설명하는 브루트 포스 알고리즘이다. https://en.wikipedia.org/wiki/Brute-force_search Brute-force search - WikipediaFrom Wikipedia, the free encyclopedia Problem-solving technique and algorithmic paradigm This article is about the..
유클리드는 수학자 이름으로 알고 있는데 호제법이란 단어 뜻이 뭔지 모르겠다. 네이버 사전에선 아래처럼 말한다. 두 정수 또는 두 정식인 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..