status : 시간복잡도 알면 뭐하나.. 별을 못찍는디! 😡
별을 찍다가 순간 머리속이 하얘지는 순간이 왔는데 iterator (여기서 iterator는 함수가 아닌 for 루프안의 반복자 변수명) i , j 를 index로 착각했다. 이 때문에 별을 찍는 것을 행열 개념으로 생각해서 대입하려고 하니 어려웠다
why :
Iterator 장점 :
detail :
1 일반 for 문의 시간복잡도는 O(n)
2 이중 for 문은 O(n^2)
3 파이썬 코드에서 iterator반복자는 반복가능한 객체.
def customFor(x):
iteratorX= x.__iter__()
# 이터레이터 객체를 가지면 이터레이터화한다
while True:
try:
i = next(iteratorX) # 반복자로부터 다음항 얻기
return i
except StopIteration: # 반복자 고갈시 stopITeration
print("Iteration finish")
break
#0 1 2 Iteration finish
파이썬 next() 알아보기 ✍
public class Star{
public static void main(String[]args){
for (int i =1; i<=5 ; i++){
for(int j=0; j<5;j++){
System.out.print("*");
}
System.out.println("");
}
}
}
*****
*****
*****
*****
*****
public class Star{
public static void main(String[]args){
for (int i =1; i<=5 ; i++){
//공백 j
for(int j=4; j>=i;j--){
System.out.print(" ");
}
// 별 j
for(int j=1 ; j<=i;j++){
System.out.print("*")
}
System.out.println("");
}
}
}
*
**
***
****
*****