정렬 WebGL2에서 GPGPU 바이트 닉 정렬 이전 기사에서 JavaScript로 바이트 닉 정렬을 구현해 보았습니다. 알고리즘을 이해할 수 있었으므로, 바이트 닉 소트의 본령이 발휘할 수 있는 WebGL로 GPGPU 바이트 닉 소트를 구현해 보았습니다. WebGL에서는 사이즈가 2의 n승의 텍스처를 준비해, 그 텍스처에 오프 스크린 렌더링으로 몇번이나 도중 상태를 기입하면서 값을 소트 해 갑니다. 텍스처는 2차원입니다만, 내부에서는 텍... 정렬WebGLGPGPU 엑셀 VBA에서 동적 계획법으로 DNA 서열의 정렬 만들기 Needleman-Wunsch 알고리즘 구현 이 기사는 DNA 서열의 정렬을 반환하는 엑셀 함수에 대한 기사입니다. 그렇다면 다음과 같은 정렬을 반환하는 함수입니다. 두 개의 행렬을 준비합니다. 정렬하고 싶은 2개의 DNA 서열의 길이를 m과 n으로 하면, 세로 m x 가로 n의 크기의 행렬입니다. 두 개의 DNA 서열은 한 글자씩 구분하여 셀에 넣고 행과 열의 레이블로 사용합니다. 초기 상태를 다음과 같이 합니다. 초기 상태를 다음과... 정렬VBA동적 계획법엑셀DNA [백준] 16212번: 정열적인 정렬 (in Python) 문제 소스코드 코드 해설 print(y)를 바로 해주었더니, 배열 형태로 출력이 되어서 계속 에러가 났다. for문으로 한 자씩 출력이 되도록 설정을 하였다. 느낀 점 배열 출력에 대한 정확한 이해가 필요했다.... 백준python정렬정열적인 정렬bojsortedSort파이썬1621216212 [SW사관학교정글] WEEK01 개발일지 - Ⅲ 정렬 버블 정렬 따라서 버블 정렬은 O(N^2)의 복잡도를 갖는 정렬 알고리즘이다. 선택 정렬 선택 정렬은 정렬되어 있지 않은 데이터 중 가장 작은 데이터를 선택하여 맨 앞부터 순서대로 정렬해 나아가는 알고리즘이다. 선택 정렬은 루프문을 통해 모든 인덱스에 접근해야 하기 때문에 기본적으로 O(N) 시간을 소모하며, 최소값을 찾으면 현재 인덱스와 최소값을 서로 swap해야 하기 떄문에 O(N)... jungle정렬개발일지정글jungle BJ 1181 단어 정렬 내가 시도한 방법 입력단어의 길이를 인덱스로 하는 2차원 배열(words)을 만든다. (예를 들어, 길이가 10인 단어는 모두 words[10]에 담겨있을 수 있도록 하기 위해) words배열을 완성한다. words를 순회(길이 순)하며(1차원 배열이 나옴), 중복값을 없애고 정렬한다(사전 순) 다른 분 코드 참고해서 최적화 시도하기 readline 사용하기 set을 사용해서 처음부터 중복값... 정렬algorithmSortbackjoonSort [알고리즘 js]정렬#3 정렬 되지 않은 배열을 0번 인덱스로 정렬하고, 0번 인덱스가 같을경우 1번 인덱로 정렬 하는 방법 sort 메서드 안에 조건문으로 정렬방식을 변경할수 있다.... 정렬알고리즘알고리즘 [Algorithm] 퀵 정렬 - Quick Sort (Python) 퀵 정렬은 다른 정렬 알고리즘에 비해 아주 준수한 수행 시간을 보이기 때문에 가장 많이 사용하는 정렬 알고리즘 중 하나이다. 병합 정렬과 마찬가지로 분할 정복과 재귀 알고리즘을 이용한다. unstable 하며 알고리즘이 호출될 때마다 새로운 리스트를 생성하며 리턴하기 때문에 기본적으로는 not-in-place 정렬이기도 하다. 다만, 배열의 인덱스를 활용하여 주어진 배열 내에서만 원소를 이동... 정렬알고리즘알고리즘 [프로그래머스]H-Index (JS) 1. answer을 발표한 논문의 수로 지정하고 citations를 오름차순으로 정리한다. 발표한 논문의 수(citations.length)를 answer의 값으로 정한다. 논문별 인용 횟수와 발표한 논문의 수를 비교하기 위해 citations를 논문별 인용 횟수가 가장 큰 순(올림차순)으로 정리한다. 2. for문을 사용하여 비교한다. for문을 사용하여 논문별 인용 횟수(citations... 프로그래머스정렬jsjs [BOJ] 18870번 좌표 압축(Python) 문제를 분석해보면, 중복을 제거한 후 정렬된 리스트에서 각 수에 대응되는 인덱스를 출력하는 문제이다. 매번 인덱스를 찾는 과정을 대신해서 dictionary를 통해 인덱스를 저장했다.... ps정렬bojboj [C언어] 백준 1427 : 소트인사이드 생각의 흐름 음.. scanf를 하나만 써야되나? 여러개를 쓸 경우 구분할 수 없을까? 힘들겠다 scanf는 하나만 써도 될 것 같다. 2143을 각각 arr[i]에 하나씩 넣어야 되는데, 음.. 각 자리수를 쪼개서 넣자. while(n > 0)반복문으로 %10, /10을 사용하자. 그러면 arr[i]에 다 들어갔을테니, 정렬을 해주자. 원래라면 선택정렬이나 버블정렬을 했을텐데, 우리는 이전... C백준정렬C [C언어] 백준 11650 : 좌표 정렬하기 생각의 흐름 아 쉬워보인다 그냥 x[i]랑 y[i]를 같이 정렬해버리면 되겠네 선택정렬 해야겠다 만약에 안되면 뭐 퀵정렬 고민해봐야지 내가 처음에 푼 코드(시간 초과) 생각의 흐름 시간초과가 났다. 퀵정렬을 사용하려고 고민했다. 근데 문제가 생겼다. 1. 퀵 정렬을 직접 구현하는건 내 현재 실력으론 부족하다. 그러면 내장함수를 사용해야되는데, qsort에는 1개의 배열밖에 안들어가고, com... 구조체C백준정렬C [C언어] 백준 11651 : 좌표 정렬하기 2 직전 좌표 정렬하기 1에서 compare에 x와 y값만 바꾸어주었다. 끗.... 구조체C백준정렬C [C언어] 백준 10989 : 수 정렬하기 3 카운팅 정렬 예시 카운팅 정렬 이해 위의 예시로 풀이를 해보자면 5 2 3 1 4 2 4 5 1 7의 숫자들이 있다. 여기서 각 숫자의 빈도수를 계산하여 배열에 집어 넣는다. 이렇게 빈도수를 구 할 수 있다. 그리고 이 빈도수를 토대로 0에서 순차 탐색을 진행하면 된다. 0은 빈도수가 0, 패스 1은 빈도수가 2, 1을 두 번 출력 2는 빈도수가 2, 2를 두 번 출력 3은 빈도수가 1, 3... C백준정렬C [알고리즘] 퀵 정렬(Quick Sort) with Kotlin left : 정렬 대상의 가장 왼쪽 지점을 가리키는 이름 i는 피벗보다 작은 값을 만날 때까지 오른쪽으로 이동 j는 피벗보다 큰 값을 만날 때까지 왼쪽으로 이동 p와 j의 값을 교환했다면 j를 기준으로 j보다 값이 작은 영역, j보다 값이 큰 영역 두 영역으로 나뉘게 됨 여기서는 5를 기준으로 하여 왼쪽 영역, 오른쪽 영역 각각에 다시 p와 left, right 등이 지정됨 왼쪽 영역에서는 ... 정렬알고리즘알고리즘 javascript에서의 정렬에 대하여 그리고 정렬은 알고리즘의 기본이지만 그만큼 중요하고 어떤 곳에서도 자주 쓰이는 만큼 하트2 스페이드5 하트5 스페이드7의 형태로 정렬이 되어있는 모습을 볼 수 있다. 즉 조건의 한개를 더 거쳐서 판단을 해야하는데 제일 선두에 있는 조건 한개만으로 정렬이 진행된다는 것이다. 그리고 알고 있는 사람들은 알았겠지만 우리는 언제나 이것을 HTML에서 사용하고 있다. 전세계에서 어디서도 보면 언어가 ... 호기심정렬정렬 알고리즘 스터디 12주차 정렬_01 문제 : 좌표 압축 문제 설명 : 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌표 압축을 적용한 결과 X'1, X'2, ..., X'N를 출력해보자. 코드 : 처음 이런식으로 접근해 3중 for문을 ... 알고리즘스터디구현HashMap정렬StringBuilderHashMap [프로그래머스/Python] 정렬 - H-Index 위키백과에서 힌트를 얻음 캬캬 map(적용시킬함수, 적용할 요소들) 함수 iterable을 받아서, 각 요소에 함수를 적용해주는 함수 enumerate 함수... 코딩테스트python정렬프로그래머스python 백준 1427번: 소트인사이드 자바문자열알고리즘정렬문자열
WebGL2에서 GPGPU 바이트 닉 정렬 이전 기사에서 JavaScript로 바이트 닉 정렬을 구현해 보았습니다. 알고리즘을 이해할 수 있었으므로, 바이트 닉 소트의 본령이 발휘할 수 있는 WebGL로 GPGPU 바이트 닉 소트를 구현해 보았습니다. WebGL에서는 사이즈가 2의 n승의 텍스처를 준비해, 그 텍스처에 오프 스크린 렌더링으로 몇번이나 도중 상태를 기입하면서 값을 소트 해 갑니다. 텍스처는 2차원입니다만, 내부에서는 텍... 정렬WebGLGPGPU 엑셀 VBA에서 동적 계획법으로 DNA 서열의 정렬 만들기 Needleman-Wunsch 알고리즘 구현 이 기사는 DNA 서열의 정렬을 반환하는 엑셀 함수에 대한 기사입니다. 그렇다면 다음과 같은 정렬을 반환하는 함수입니다. 두 개의 행렬을 준비합니다. 정렬하고 싶은 2개의 DNA 서열의 길이를 m과 n으로 하면, 세로 m x 가로 n의 크기의 행렬입니다. 두 개의 DNA 서열은 한 글자씩 구분하여 셀에 넣고 행과 열의 레이블로 사용합니다. 초기 상태를 다음과 같이 합니다. 초기 상태를 다음과... 정렬VBA동적 계획법엑셀DNA [백준] 16212번: 정열적인 정렬 (in Python) 문제 소스코드 코드 해설 print(y)를 바로 해주었더니, 배열 형태로 출력이 되어서 계속 에러가 났다. for문으로 한 자씩 출력이 되도록 설정을 하였다. 느낀 점 배열 출력에 대한 정확한 이해가 필요했다.... 백준python정렬정열적인 정렬bojsortedSort파이썬1621216212 [SW사관학교정글] WEEK01 개발일지 - Ⅲ 정렬 버블 정렬 따라서 버블 정렬은 O(N^2)의 복잡도를 갖는 정렬 알고리즘이다. 선택 정렬 선택 정렬은 정렬되어 있지 않은 데이터 중 가장 작은 데이터를 선택하여 맨 앞부터 순서대로 정렬해 나아가는 알고리즘이다. 선택 정렬은 루프문을 통해 모든 인덱스에 접근해야 하기 때문에 기본적으로 O(N) 시간을 소모하며, 최소값을 찾으면 현재 인덱스와 최소값을 서로 swap해야 하기 떄문에 O(N)... jungle정렬개발일지정글jungle BJ 1181 단어 정렬 내가 시도한 방법 입력단어의 길이를 인덱스로 하는 2차원 배열(words)을 만든다. (예를 들어, 길이가 10인 단어는 모두 words[10]에 담겨있을 수 있도록 하기 위해) words배열을 완성한다. words를 순회(길이 순)하며(1차원 배열이 나옴), 중복값을 없애고 정렬한다(사전 순) 다른 분 코드 참고해서 최적화 시도하기 readline 사용하기 set을 사용해서 처음부터 중복값... 정렬algorithmSortbackjoonSort [알고리즘 js]정렬#3 정렬 되지 않은 배열을 0번 인덱스로 정렬하고, 0번 인덱스가 같을경우 1번 인덱로 정렬 하는 방법 sort 메서드 안에 조건문으로 정렬방식을 변경할수 있다.... 정렬알고리즘알고리즘 [Algorithm] 퀵 정렬 - Quick Sort (Python) 퀵 정렬은 다른 정렬 알고리즘에 비해 아주 준수한 수행 시간을 보이기 때문에 가장 많이 사용하는 정렬 알고리즘 중 하나이다. 병합 정렬과 마찬가지로 분할 정복과 재귀 알고리즘을 이용한다. unstable 하며 알고리즘이 호출될 때마다 새로운 리스트를 생성하며 리턴하기 때문에 기본적으로는 not-in-place 정렬이기도 하다. 다만, 배열의 인덱스를 활용하여 주어진 배열 내에서만 원소를 이동... 정렬알고리즘알고리즘 [프로그래머스]H-Index (JS) 1. answer을 발표한 논문의 수로 지정하고 citations를 오름차순으로 정리한다. 발표한 논문의 수(citations.length)를 answer의 값으로 정한다. 논문별 인용 횟수와 발표한 논문의 수를 비교하기 위해 citations를 논문별 인용 횟수가 가장 큰 순(올림차순)으로 정리한다. 2. for문을 사용하여 비교한다. for문을 사용하여 논문별 인용 횟수(citations... 프로그래머스정렬jsjs [BOJ] 18870번 좌표 압축(Python) 문제를 분석해보면, 중복을 제거한 후 정렬된 리스트에서 각 수에 대응되는 인덱스를 출력하는 문제이다. 매번 인덱스를 찾는 과정을 대신해서 dictionary를 통해 인덱스를 저장했다.... ps정렬bojboj [C언어] 백준 1427 : 소트인사이드 생각의 흐름 음.. scanf를 하나만 써야되나? 여러개를 쓸 경우 구분할 수 없을까? 힘들겠다 scanf는 하나만 써도 될 것 같다. 2143을 각각 arr[i]에 하나씩 넣어야 되는데, 음.. 각 자리수를 쪼개서 넣자. while(n > 0)반복문으로 %10, /10을 사용하자. 그러면 arr[i]에 다 들어갔을테니, 정렬을 해주자. 원래라면 선택정렬이나 버블정렬을 했을텐데, 우리는 이전... C백준정렬C [C언어] 백준 11650 : 좌표 정렬하기 생각의 흐름 아 쉬워보인다 그냥 x[i]랑 y[i]를 같이 정렬해버리면 되겠네 선택정렬 해야겠다 만약에 안되면 뭐 퀵정렬 고민해봐야지 내가 처음에 푼 코드(시간 초과) 생각의 흐름 시간초과가 났다. 퀵정렬을 사용하려고 고민했다. 근데 문제가 생겼다. 1. 퀵 정렬을 직접 구현하는건 내 현재 실력으론 부족하다. 그러면 내장함수를 사용해야되는데, qsort에는 1개의 배열밖에 안들어가고, com... 구조체C백준정렬C [C언어] 백준 11651 : 좌표 정렬하기 2 직전 좌표 정렬하기 1에서 compare에 x와 y값만 바꾸어주었다. 끗.... 구조체C백준정렬C [C언어] 백준 10989 : 수 정렬하기 3 카운팅 정렬 예시 카운팅 정렬 이해 위의 예시로 풀이를 해보자면 5 2 3 1 4 2 4 5 1 7의 숫자들이 있다. 여기서 각 숫자의 빈도수를 계산하여 배열에 집어 넣는다. 이렇게 빈도수를 구 할 수 있다. 그리고 이 빈도수를 토대로 0에서 순차 탐색을 진행하면 된다. 0은 빈도수가 0, 패스 1은 빈도수가 2, 1을 두 번 출력 2는 빈도수가 2, 2를 두 번 출력 3은 빈도수가 1, 3... C백준정렬C [알고리즘] 퀵 정렬(Quick Sort) with Kotlin left : 정렬 대상의 가장 왼쪽 지점을 가리키는 이름 i는 피벗보다 작은 값을 만날 때까지 오른쪽으로 이동 j는 피벗보다 큰 값을 만날 때까지 왼쪽으로 이동 p와 j의 값을 교환했다면 j를 기준으로 j보다 값이 작은 영역, j보다 값이 큰 영역 두 영역으로 나뉘게 됨 여기서는 5를 기준으로 하여 왼쪽 영역, 오른쪽 영역 각각에 다시 p와 left, right 등이 지정됨 왼쪽 영역에서는 ... 정렬알고리즘알고리즘 javascript에서의 정렬에 대하여 그리고 정렬은 알고리즘의 기본이지만 그만큼 중요하고 어떤 곳에서도 자주 쓰이는 만큼 하트2 스페이드5 하트5 스페이드7의 형태로 정렬이 되어있는 모습을 볼 수 있다. 즉 조건의 한개를 더 거쳐서 판단을 해야하는데 제일 선두에 있는 조건 한개만으로 정렬이 진행된다는 것이다. 그리고 알고 있는 사람들은 알았겠지만 우리는 언제나 이것을 HTML에서 사용하고 있다. 전세계에서 어디서도 보면 언어가 ... 호기심정렬정렬 알고리즘 스터디 12주차 정렬_01 문제 : 좌표 압축 문제 설명 : 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌표 압축을 적용한 결과 X'1, X'2, ..., X'N를 출력해보자. 코드 : 처음 이런식으로 접근해 3중 for문을 ... 알고리즘스터디구현HashMap정렬StringBuilderHashMap [프로그래머스/Python] 정렬 - H-Index 위키백과에서 힌트를 얻음 캬캬 map(적용시킬함수, 적용할 요소들) 함수 iterable을 받아서, 각 요소에 함수를 적용해주는 함수 enumerate 함수... 코딩테스트python정렬프로그래머스python 백준 1427번: 소트인사이드 자바문자열알고리즘정렬문자열