Skip to content

Instantly share code, notes, and snippets.

View keehyun2's full-sized avatar
๐Ÿ˜ช
zzzz

Keehyun Park keehyun2

๐Ÿ˜ช
zzzz
View GitHub Profile
@keehyun2
keehyun2 / radixSort.java
Created January 24, 2018 12:05
radixSort ๊ธฐ์ˆ˜ ์ •๋ ฌ
void radixSort(int[] arr) {
int[] result = arr ;
for (int place = 1; place <= 1000000000; place *= 10) {
result = countingSort(result, place);
}
for (int i = 0; i < arr.length; i++) {
arr[i] = result[i];
}
}
@keehyun2
keehyun2 / bucketSort.java
Created January 24, 2018 12:06
bucketSort
void bucketSort(int[] a, int maxVal) {
int [] bucket=new int[maxVal+1];
for (int i=0; i<bucket.length; i++) {
bucket[i]=0;
}
for (int i=0; i<a.length; i++) {
bucket[a[i]]++;
}
@keehyun2
keehyun2 / heapify.java
Created January 28, 2018 04:09
heapify
/**
* node์˜ childe node๋ฅผ ๋น„๊ตํ•˜์—ฌ ํžˆํ”„ํ™”ํ•ฉ๋‹ˆ๋‹ค.
* @param arr
* @param nodeIndex ํžˆํ”„ํ™”ํ•  node ์˜ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.
* @param heapSize ์™„์ „ ์ด์ง„ ํŠธ๋ฆฌ์˜ ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค.
*/
void heapify(int[] arr, int nodeIndex, int heapSize) {
int ai = arr[nodeIndex];
while (nodeIndex < heapSize/2) { // arr[i] ๋Š” leaf ๊ฐ€ ์•„๋‹Œ๊ฒฝ์šฐ๋งŒ loop ๋ฅผ ์ˆœํ™˜ํ•ฉ๋‹ˆ๋‹ค.
int j = 2 * nodeIndex + 1; // j๋Š” ai์˜ ์ขŒ์ธก ์ž์‹ ๋…ธ๋“œ์˜ index ์ž…๋‹ˆ๋‹ค.
@keehyun2
keehyun2 / buildHeap.java
Created January 28, 2018 04:09
buildHeap
/**
* heapify ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•˜์—ฌ Heap ์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.
* @param arr
* @param nodeIndex
* @param heapSize
*/
void buildHeap(int[] arr, int nodeIndex, int heapSize) {
if(nodeIndex >= heapSize/2) return;
buildHeap(arr, 2 * nodeIndex + 1, heapSize); // buildHeap- left subTree
buildHeap(arr, 2 * nodeIndex + 2, heapSize); // buildHeap- right subTree
@keehyun2
keehyun2 / CustomString.java
Created January 28, 2018 04:10
CustomString
class CustomString implements Comparable<CustomString> {
public String str;
public CustomString(String str) {
this.str = str;
}
public int compareTo(CustomString cs) {
int leng1 = this.str.length();
@keehyun2
keehyun2 / StringLengthComparator.java
Created January 28, 2018 04:11
Comparator ๊ตฌํ˜„
import java.util.Comparator;
import java.util.PriorityQueue;
public class Test
{
public static void main(String[] args)
{
Comparator<String> comparator = new StringLengthComparator();
PriorityQueue<String> queue =
new PriorityQueue<String>(10, comparator);
@keehyun2
keehyun2 / BinarySearchTree.java
Created April 27, 2018 02:18
BinarySearchTree
public class BinarySearchTree {
public static Node root;
public BinarySearchTree() {
this.root = null;
}
/**
* tree ์—์„œ key ๋กœ node ๋ฅผ ํƒ์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
* @param id
#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <math.h>
using namespace std;
int main() {
int a[7] = {0,500,300,200,50,30,10};
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String n = sc.next();
char[] arrChar = n.toCharArray();
for (int i = 0; i < arrChar.length; i++) {
@keehyun2
keehyun2 / StringZip.java
Created February 7, 2020 01:20
๋ฌธ์ž์—ด ์••์ถ• ๋ฌธ์ œ https://programmers.co.kr/learn/courses/30/lessons/60057
package programers;
import java.util.HashMap;
import java.util.Map;
public class StringZip {
public int solution2(String s) {
int minResult = s.length();
for (int unit = 1; unit <= s.length() / 2; unit++) { // for #01
int resultLength = unit;