본문 바로가기

반응형

IT/알고리즘

(48)
코딩테스트 (11/21/19) 받은 코테 문제 + 풀이 1. 2차원 배열 반시계/시계 [2차원 배열] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [출력 결과] 2 3 4 8 1 10 6 12 5 11 7 16 9 13 14 15 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94..
기초 알고리즘6(November 20 2019) 면접을 보는데 탄탄한 기본이 되있어야지 기술면접때 잘할 수 있을것같다 알고와 이것이 자바다 도전! 1. 색칠 재귀 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 package 색칠재귀; public class TaewonClass { public static void main(String[] args) { //0를 모두 2로 색칠하세요 int[][] arr = { {0,0,0,0,0}, {0,0,1,1,0}, {0,0,0,0,1}, {0,0,0,0,0}, {0,0,1,0,0}}; for(int i = 0; i Colored by Color Scripter 2. 숫자추출재귀' 1 2 3 4 5 6 7 8 9 ..
기초 알고리즘5(Novemeber 4 2019) 이틀 동안 일이 있어서 공부를 많이 못했는데 다시 시작하자 1. 10진수를 2~16진수 변환 와일문안에서 실행되는 조건이 이 알고리즘의 핵심이다 10~15는 16진수에만 해당이되면서 A~E는 ASCII code각 1차이여서 저렇게 구현을 해봤다 만약 21번째 줄에서 '0'을 추가를 안하면 출력이 제대로 안된다.. 2. 입력한 숫자만큼 더하기 빼기 boolean flag를 통해 + 와 -을 바꾸면서 출력하는데 여기서 배운점은 이푸문에 최대한 조건이 적을수록 시간이 적게 걸린다는 점이다. 첫번째는 유투브에서 보여준 코드는 0.027초가 걸렸지만 제가 작성한 것은 0.041 거의 70%시간이 더 필요했다 3. 음계 8개의 숫자를 입력받는데 asc, desc 아니면 mixed라고 판단하는 알고리즘 4. 누적합 ..
기초 알고리즘4(November 1 2019) 금요일에 공부를한 걸 정리를 못해서 친구 만나기 전에 지금 정리 할 시간이 생겨서 카페와서 정리를 할려고 하는데.. 2틀전에 해서 그런지 정리하는데 시간이 조금 걸렸네요 1. 상수 거꾸로 읽기 이 알고리즘을 풀때 저는 전에 했던 방식 처럼 먼저 스트링으로 입력 받았습니다 1. 먼저 상수를 스트링으로 입력 받습니다 2. 목적은 입력 받은 두 상수를 거꾸로 수선을 바꾼뒤 더 큰 숫자를 출력하는게 알고리즘의 목적입니다. 3. 단순히 뒤에서부터 하나씩 스트링에 추가하는 것 보단 효율성을 고려해서 스트링을 캐릭터 배열로 변환하고 18 ~22번째 처럼 첫번째 배열을 마지막 배열으랑 바꾸는 포문을 사용을 했습니다. 4. 그리고 자바 String엔 char 배열을 바로 바꿔주는 라이브러리가 있어서 사용후 숫자로 형변환..
기초 알고리즘3(October 31 2019) 말은 기초이지만 확실히 실력이 없으니까 조금 헛고생 좀 했는데 그래도 생각한 만큼 새로운 것도 배우고 풀어나가니까 재밌네요 시작 1. palindrome 02320 이렇게 첫 번째 숫자와 마지막 숫자 그리고 2번째 4번째 숫자가 똑같으면 palindrome여서 값은 true를 출력를 하는 알고리즘이다. 10번째 줄부터 16번째는 제가 처음에 짝 코드인데 if else문을 사용해서 값이 정상적으로 나오는 것 같지만 문제는 만약 처음 돌 때는 false이지만 만약 마지막에만 값이 똑같으면 true로 변환하는데.. 그렇게까지 생각을 못 해서 20~28번 코드가 알고리즘에 적합한 코드이다. 한 번이라도 안 똑같으면 false로 값이 변하는 방식. 또 charAt은 배열방처럼 0부터 시작을 한다! 2. 문자열 뒤..
기초 알고리즘3(October 30 2019) 갈수록 알고리즘에 대한 흥미가 더더욱 해지 는 것 같다. 학원에서 프로젝트를 진행할 때 sts4버전를 다운로드해서 사용을 했는데 유난히 나한테만 프레임이 sts3또는 이클리습보다 무거웠던 점이 기억이 난다. 그래도 프로젝트 중간에 바꾸기 싫어서 2초 로딩 시간을 감안하면서 개발을 했는데 수료 후 취직 준비하면서 공부할 때 다시 eclipse로! 그래서 기존에 사용했던 dark theme이 없었는데 오늘 다시 다운을 받았다. 확실히 dark theme이 변수 클래스 칼러가 명백히 다르고 조끔 있어(?) 보이기도 하건 같다. 1. 입력된 숫자 개수 출력 1. 숫자를 입력받아 0~9까지 숫자의 개수를 출력하는 알고리즘 2. 내가 처음 코딩했을 때는(주석 부분) 이상하게 첫 번째 결과가 나왔는데 보니까 기존에 ..
기초 알고리즘들(October 29 2019) 지금은 취업 준비하면서 하루에 알고리즘과 자바 공부를 병행하고 있는데 확실히 생각하면서 문제를 푸는 알고리즘 쪽이 더 재미가 있는 것 같다. 오늘은 9가지의 간단한 알고리즘을 정리해 보았습니다 1. 대문자에서 소문자, 소문자에서 대문자 1. 입력을 받은 후 arr[]에 저장 2. ASCII는 소문자가 먼저 나오고 그 다음에 대문자가 와서 소문자에서 대문자로 갈때는 차이를 기존값에 대해주고, 대문자에서 소문자는 빼주면된다 2. 자기자신(?) 숫자 더하기 1. 숫자를 입력받고 2. 10을 나눈 나머지를 result에 더하기 3. number를 재정의하고 number가 0보다 작을때 까지 반복 3. factorial 1. 첫번째 포문은 1 서부터 입력받은 숫자까지 올라가면서 곱하는 방법 2. 두번째 포문은 입..
학생검색, 피보나치, 최빈수, 10진수에서 2진수(October 28 19) 오늘부터 알고리즘 공부한걸을 포스팅할 생각입니다. 블로깅을 시작한 이유는 간단해요. 내가 공부한 내용을 남길수 있고 또 한국말이 어설픈나에게 조금 부그러운 일이지만 틀리면서 발전할 하고 싶어서 시작합니다. 블로그를 wordpress란 사이트를 이용할려 했으나 돈을 지불하지 않으면 제한 사항이 많아서 티스토리를 통해서 시작을 했어요. (칼러스크립이 다운되서 이미지로 올릴게요) 1. 학생검색 1. 학생의 이름과 학번을 저장하기 2. y를 입력 받으면 학생이름을 통해 검색하기 n를 입력하면 종료 3. boolean flag를 사용해서 검색결과가 없다고 보여주기 4. 만약 y 또는 n말고 다른걸을 입력 했을때는 다시 입력 유도하기 2. 피보나치 1. An = An-1 + An-2 2. 배열로 피보나치 출력하기 ..

반응형