본문 바로가기
반응형

분류 전체보기395

[백준] 17478번 재귀함수가 뭔가요? 문제풀이 (python) 문제 링크 https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net python 풀이 def 재귀가모임(m): print("_" * (4 * (a - m)) + '"재귀함수가 뭔가요?"') # if not m: if m == 0: print("_" * (4 * (a - m)) + '"재귀함수는 자기 자신을 호출하는 함수라네"') print("_" * (4 * (a - m)) + "라고 답변하였지.") return print("_" * (4 * (a -.. 2022. 8. 6.
[재귀함수] 재귀함수 뜻과 python예시, maximum recursion depth 스택 구현 (1) 재귀함수 Recursion Function 재귀함수가 모냐면은 자기 자신을 다시 호출하는거에여 재귀함수 예시 이게 대표적인 재귀함수에여 def 재귀함수(): print('재귀인거시야') 재귀함수() 재귀함수() 재귀함수 안에 재귀함수가 있죠 파이썬은 기본적으로 최대 재귀 깊이 제한이 있어서 중간에 막혀여 오류뜬다는 소리져 오류가 왜뜨냐면 바닥이 드러나서입니당 count 로 몇번만에 바닥이 드러나는지 확인해보께여 count = 0 def 재귀(): global count print(count, '번째 재귀인거시야') count += 1 재귀() 재귀() 997번째에서 나네여 (0부터 시작합니당) RecursionError: maximum recursion depth exceeded while calling.. 2022. 8. 5.
[JavaScript] 호이스팅! hoisting 간단 뜻(면접준비용 깊은 원리는ㄴ🙄) 글 쓰기 전에... 선언: let a 할당: a = 'a'; 호이스팅 이거 오류 날까?? console.log(이름); var 이름 = '버니'; console.log(이름); 안남😮 왜 안나냐면 호이스팅 때문인데 호이스팅 뜻 호이스팅: 변수 선언을 맨 위로 끌고오는 현상 Js 는 위에서 밑으로 구문을 해석하는데, 해석하면서 변수나 함수가 선언되어있으면 바로바로 맨 위로 끌고 올라온다. 어차피 원래 변수는 heap 에 넣어놓음 변수 선언이랑 할당은 이렇게 동시에 할 수 있는데 var 이름 = '버니'; 이걸 두개로 쪼갤 수 있다. (다들 알다시피) var 이름; 이름 = '버니'; 자바스크립트는 구문을 해석하면서 저런식으로 쪼갠다음에... 변수 선언부분을 위로 다올려버린다. 호이스팅 예시 이런 JavaS.. 2022. 8. 3.
[JavaScript] 변수 선언 var let const 존재 범위 (2) 1편...🙂 https://gallery-k.tistory.com/352 변수 선언 존재범위 재선언 재할당 var function {} o o let {} x o const {} x x 변수 존재범위 존재범위: 사용할 수 있는 곳 function 함수(){ var 이름 = 'Kim'; console.log(이름); } 지금 var 로 선언된 '이름' 변수는 함수() 에서 선언되었고 var '이름' 은 지금 함수() 에서만 사용할 수 있다. var '이름' 의 존재범위는 함수()이다. var 존재범위: function function 함수(){ var 종족 = '토끼'; console.log(종족); //가능 } 함수(); console.log(종족);// 앙대 함수 안에서 선언한 var 는 그 안에서만 .. 2022. 8. 2.
[JavaScript] 변수 선언 let const 가 나온 이유, var let const 의 차이 (1) 글 쓰기 전에... 선언: let a 할당: a = 'a'; let const 왜나옴? var 는 예전부터 있던 애구 let 이랑 cosnt 는 새로 나온 애임 (es6) 예전에는 변수를 선언할 때 var 만 사용했다고 한다. var 는 엄청 자유로워서 한번 쓰면 또 쓸 수도 있고 값도 맘대로 바꿀 수 있다. 근데 너무 자유로우니까 문제가 많이 생기는거임.. var 로 선언했던거 까먹어서 한번 더 선언해버려서 값이 바뀌거나 하는 문제들이 생겼다고 한다. (원래 자유는 많을수록 문제도 많아지고 책임도 많아지니까ㅠㅠ) 그래서 ES6 에서 새로 문법이 나왔는데 (이제는 새로가 아니징...) 그게 바로 let 이랑 cosnt 이다. var let const 차이1 변수 선언 존재범위 재선언 재할당 var fun.. 2022. 8. 1.
[백준] 2747번 피보나치 수 문제풀이(python) 문제링크: https://www.acmicpc.net/problem/2747 2747번: 피보나치 수 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net python 풀이 memo = [0] * 50 def 피(n): if n == 0: return 0 elif n == 1: return 1 elif memo[n]: return memo[n] memo[n] = 피(n - 1) + 피(n - 2) return memo[n] a = int(input()) print(피(a)) 2747번 문제는 일반적인 재귀함.. 2022. 8. 1.
[JavaScript] arrow function 뜻, 특징, 기존 function 과 차이점 (this 차이) 💜 요약 메소드의 this 엄마{} window 의 this window{} 전역 function 의 this window{} (=엄마{}) constructor 의 this instance (=새로 만들어지는 아가 object) eventListener 의 this e.currentTarget (=지금 이벤트가 동작하는 html 태그) arrow function 메소드의 this 바깥의 this 값 = window{} eventListener 의 this 바깥의 this 값 = window{} arrow function? arrow function 은 function 처럼 쓸 수 있는 ES6 신문법이다. // 일반함수 var 함수 = function() { } // arrow function var 함.. 2022. 7. 31.
[백준] 10872번 팩토리얼 문제 풀이 (python) 문제 링크: https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net python 풀이 def 재귀팩토리얼(n): if n 2022. 7. 31.
[JavaScript] 함수, function 뜻, 사용하는 이유 ES6 에서 arrow function 이라는 애가 나왔다. () => 이렇게 생긴 애인데 람다식 문법이랑 비슷하게 생겼다. 😫 그래서 arrow function 공부할 겸 함수 정리를 쭉 해보려구...🤔 함수 function 뜻 함수는 상자?.🎁 상자에 짐을 넣어놓을 수도 있고 꺼내 쓸 수도 있고 안에서 뭐 짐을 풀어놓거나 다른 짐이랑 합칠 수 있다.... 함수안에 그냥 데이터만 넣어놓을 수도 있고 데이터만 꺼내 쓸 수도 있고 파라미터 형태로 값을 넣고 기존의 데이터와 합칠 수 있다. (값 조작이 된다구) 그래서 함수를 사용하는 이유는 1. 긴 코드를 저장 2. 파라미터 사용하려구 함수를 사용하는 이유 1. 긴 코드를 저장 왜냐면 다른데서도 막 쓸려구 // 이렇게 만들어놓으면은 function 바보().. 2022. 7. 30.
[JavaScript] eventListener 에서 this 의 의미 (3) + e.currentTarge 의 뜻 💜 요약 메소드의 this 엄마{} window 의 this window{} 전역 function 의 this window{} (=엄마{}) constructor 의 this instance (=새로 만들어지는 아가 object) eventListener 의 this e.currentTarget (=지금 이벤트가 동작하는 html 태그) 💜 this 의 뜻5_eventListener eventListener 의 this: e.currentTarget (=지금 이벤트가 동작하는 html 태그) 이벤트리스너를 달기 위해 버튼을 만들고 id 값을 '잉' 으로 설정해줬다. 잉 만들어진 버튼을 클릭하면 this 와 e.currentTarget 이 출력될 것이당 둘 다 같은 값이 출력되고 그 값은 지금 이벤트가 동.. 2022. 7. 27.
[JavaScript] constructor 에서 this 의 의미 (2) + instance 의 뜻 💜 요약 메소드의 this 엄마{} window 의 this window{} 전역 function 의 this window{} (=엄마{}) constructor 의 this instance (=새로 만들어지는 아가 object) eventListener 의 this e.currentTarget (=지금 이벤트가 동작하는 html 태그) 💜 this 의 뜻4_constructor constructor 의 this: instance (= 새로 만들어지는 아가 object) 자바스크립트에서 constructor 를 사용하면 새로운 object 들을 만들어낼 수 있다. function 엄마 (이름) { this.name = 이름 }; 이렇게 엄마 constructor 를 만들었구 키값 name 앞에 this... 2022. 7. 26.
[JavaScript] object메소드, window, function(전역) 에서 this 의 의미(1) 💜 요약 메소드의 this 엄마{} window 의 this window{} 전역 function 의 this window{} (=엄마{}) constructor 의 this instance (=새로 만들어지는 아가 object) eventListener 의 this e.currentTarget (=지금 이벤트가 동작하는 html 태그) 💜 this 의 뜻1_object 메소드 메소드의 this: 엄마{} 메소드는 object 안의 함수를 뜻한다. let 엄마obj = { 종족 : '토끼',// 이거는 값 이름메소드 : function(){// 이거는 메소드 console.log('버니'); }, 아가메소드: function(){ // 이거두 메소드 console.log(this); } } console.. 2022. 7. 25.
[JavaScript] window 의 의미, window object 에 들어가는 값, 전역변수가 저장되는 원리 window 뜻? 😮 window 는 엄청 큰 object 이다. 실제로 개발자도구에서 window 의 타입을 검색해보면 object 라고 나온다. window object 안에 들어있는 값🙄 window object 안에는 전역으로 쓸 수 있는 기본 함수들이 저장되어있다. alert, length 같은 함수들! 심심하면 개발자도구에서 window 입력하고 살펴봐도 좋당 그래서 🤩전역🤩에다가 함수나 변수를 선언하면 window object 에 저장된다. 무슨 뜻이냐면 a함수(); 로 출력한 결과랑 window.a함수(); 로 출력한 결과가 같음 왜 그러냐면 window object 에 저장되었기 때문이다. window 는 object 이기 때문에 window.어쩌구 이런식의 object 문법처럼 사용이 .. 2022. 7. 24.
[JavaScript] DOM 의 뜻, 자바스크립트가 html 을 해석하는 원리 DOM: Document Object Model DOM 의 뜻: 자바스크립트가 HTML (document)을 object 자료로 정리한 것 Document 를 Object 화 시킨 Model 이라는 뜻이다. 여기서 Doucment 는 html 을 뜻한다. 왜 html 을 Object 화 시켰냐면은 - 자바스크립트로 HTML 언어를 조작하기 위해서… - 자바스크립트가 해석할 수 있는 문법으로 변환해놓으려고 자바스크립트와 html 은 다른 언어이기 때문에 서로 인식을 하지 못한다. 그래서 자바스크립트가 생 html 을 조작하지 못한다. 이런 식으로 자바스크립트가 해석할 수 있게 하기 위해 object 화 시키는 것이다... html Object 화 자바스크립트가 html 언어를 조작할 때 이런 문법을 사용한.. 2022. 7. 24.
[MariaDB,MySQL] 사업자등록번호, 법인등록번호 포매팅 사업자등록번호 포맷 -- 사업자등록번호 포맷 select concat(substring(123456789123,1,3),'-',substring(123456789123,4,2),'-',substring(123456789123,6)) as 사업자등록번호 from dual 법인등록번호 포맷 -- 법인등록번호 포맷 select concat(substring(123456789123,1,6),'-',substring(123456789123,7)) as 법인등록번호 from dual 2022. 7. 20.
반응형