전체 글

영차영차,,,
Algorithm/Study

자료구조 기초

자료구조 분류 1. 단순구조 정수 실수 문자 문자열 2. 선형구조 // 자료들 사이의 관계가 1:1 관계 리스트 스택 큐 3. 비선형구조 // 자료들 사이의 관계가 1다 or 다:다 관계 트리 그래프 4. 파일구조 // 서로 관련 있는 필드로 구성된 레코드의 집한인 파일에 대한 구조 순차파일 색인파일 직접파일 추상 자료형 (Abstract Data Type, ADT) 구체적인 기능의 완성 과정을 언급하지 않고, 순수하게 기능이 무엇인지를 나열하는 것 추상화란 시스템의 간략화된 기술 또는 명세 ex) 자판기, 전자레인지 -> 기능만 나열한 것 자료구조 학습 순서 1. 자료구조의 ADT 정의 2. ADT를 근거로 자료구조를 활용하는 main 함수 정의 3. ADT를 근거로 자료구조 구현 복잡도 (Comple..

카테고리 없음

[level 0] 문자열 밀기 - 120921 // Python

성능 요약 메모리: 10.1 MB, 시간: 0.01 ms 구분 코딩테스트 연습 > 코딩테스트 입문 채점결과 정확성: 100.0 합계: 100.0 / 100.0 문제 설명 문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다. 이것을 문자열을 민다고 정의한다면 문자열 A와 B가 매개변수로 주어질 때, A를 밀어서 B가 될 수 있다면 밀어야 하는 최소 횟수를 return하고 밀어서 B가 될 수 없으면 -1을 return 하도록 solution 함수를 완성해보세요. 내 풀이 def solution(A,B): for i in range(len(A)): if A == B: return i A = A[-1] + A[:-1] return -1 얻어갈 ..

Algorithm/Programmers

120864. 숨어있는 숫자의 덧셈 (2)// Python

성능 요약 메모리: 10.4 MB, 시간: 0.03 ms 구분 코딩테스트 연습 > 코딩테스트 입문 채점결과 정확성: 100.0 합계: 100.0 / 100.0 문제 설명 문자열 my_string이 매개변수로 주어집니다. my_string은 소문자, 대문자, 자연수로만 구성되어있습니다. my_string안의 자연수들의 합을 return하도록 solution 함수를 완성해주세요 내 풀이 def solution(my_string): answer = 0 temp = '' num = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] for i in my_string: if i in num: temp += i else: if temp != '': a = int(temp) a..

Algorithm/Programmers

[level 1] 문자열 내 p와 y의 개수 - 12916 // Python

성능 요약 메모리: 10 MB, 시간: 0.00 ms 구분 코딩테스트 연습 > 연습문제 채점결과 정확성: 100.0 합계: 100.0 / 100.0 문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 내 풀이 def solution(s): answer = True s1 = s.lower() p = 0 y = 0 for i in s1: if i == 'p': p += 1 elif i == 'y': y += 1 if p == y: retur..

Algorithm/LeetCode

Two Sum // Python

Two Sum Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return the answer in any order. Constraints: 2

Algorithm

powerOfTwo // Java

public boolean powerOfTwo(long num) { while (num >= 1) { num = num / 2; if (num == 1) { return true; } else if (num % 2 > 0) { return false; } } return true; }

Bootcamp/Codestates Section 1

자료구조/알고리즘 - 재귀호출(Recursive Call) // Python

재귀(Recursive) / 재귀호출(Recursive Call) 재귀호출 : 함수 안에서 함수 자기자신을 호출하는 방식 일반적인 상황에서 잘 사용되지 않지만, 알고리즘을 구현할 때 유용하게 사용됨 반복문보다 재귀호출이 직관적이고 이해하기 편한 경우가 존재함 반복되는 호출을 중단할 수 있는 종료 조건이 필요함 -> 그렇지 않을시 RecursionError 발생 재귀의 장점 불필요하게 다중 반복문을 사용하지 않을 수 있기 때문에, 코드 수정에 용이하고 이해하기 편함 변수를 여러 개 사용하지 않아도 됨 재귀의 단점 반복문과 비교하여 코드의 흐름을 직관적으로 파악하기 어려움 반복적으로 재귀호출이 일어날 때 지역변수, 매개변수, 반환값을 모두 stack에 저장되어 반복문보다 메모리를 더 많이 사용됨 복귀할 때 ..

AidenYoun
성장형 개발 블로그