
반복문 vs 재귀
2022. 10. 22. 23:37
EEddy's
반복문과 재귀함수 프로그램은 반복되는 작업을 수행하도록 설계된다. 따라서 반복을 구현하는 로직은 필수적이고 프로그래밍 언어마다 for, while 같은 기본적인 반복 제어문을 지원한다. 반복되는 작업은 기본 제어문을 통해서 뿐만 아니라 재귀함수로도 구현할 수 있다. 재귀함수는 복잡한 문제를 단순화해서 풀 수 있는 알고리즘으로 많이 알려져 있는데, 원래 정의는 하나의 함수가 자신을 다시 호출하여 반복되는 작업을 수행하는 함수를 말한다. 반복문과 재귀함수는 서로 반복을 수행하는 구조는 다르지만, 재귀 함수로 작성 할 수 있다면 반복문으로도 작성할 수 있고 그 역도 성립한다. 🤔 그렇다면 어떤 방식이 더 좋을까? 아래 코드는 자동차 경주게임을 구현한 일부 예시 코드다. 사용자로부터의 입력이 올바른지 검증하고 ..
List와 반복문(loop), 그리고 변수 선언 위치에 대해서
2017. 11. 1. 21:37
DevLog/JAVA
ArrayList와 Vector는 RandomAccess inteface를 구현하고 있다.List의 크기만큼 반복문을 도는 방법에는 크게 두 가지 방법이 많이 쓰이고 있죠.java.util.List의 size()로 크기를 구해서 그 갯수만큼 반복문을 돌아서 get(int index)로 List안에 있는 객체를 가지고 온다.terator() 로 java.util.Iterator 객체를 얻은 후 이 객체의 hasNext()가 true인 동안 반복문을 돌아서 next()로 List안의 객체를 가지고 온다.그런데 그 객체가 java.util.ArrayList나 java.util.Vector가 확실할 때는 1번의 방법이 더 빠르다고 합니다. 그 이유는 API문서를 보시면 확인할 수 있듯이 ArryList와 Vec..
향상된 For문 (Enhanced For Loop)
2017. 11. 1. 20:54
DevLog/JAVA
기존의 For Loopfor (카운트 변수 정의, 초기화 ; 조건문 ; 카운트 변수 증감)for (int i = 0 ; i 실행 결과 : x y z 1 2 3단점 : 배열만 사용 가능, 배열 값을 변경하지 못하고 사용만 할 수 있음(배열 초기화 불가능).