본문 바로가기

공부

(171)
2019-0429 클로저를 매개변수 퍼블리셔 웹사이트를 만듬(정적) vs 프론트엔드 동적으로 만든다( 서버에서 원하는 데이터를 가공해서 우리가 원하는 Ui를 표현한다 서버와 관계가 밀접하다) 애플리케이션 - 전용 프로그램이 있다. 웹 애플리케이션 - 웹브라우저만 있으면 된다 ex) 구글 docs 유저가 xx, yy '상태'를 서버로 보낸다. 1사용자가 입력한 데이터를 취득하는방법, 2취득한 데이터를 서버로 보내는 방법(요청)3.응답을 받는방법4화면전환 typescript:동적의 문제점을 보완하기 위해 정적으로 만듬 문, 표현식, 변수의 (뜻) html 케밥, "" , js myDiv 카멜 '' var x = 10 띄어쓰기 2칸 var x=10 쿠세다 변수는 어떤 값을 저장하기 위한 이름을 가진 공간. 상수. 변하지 않는 ..
프로와 아마추어의 차이 취업-> 프로 -> 효율(남들보다 잘해야 한다) 취미 ->아마추어 -> 재미있으면 된다 프로와 아마추어의 차이: 프로 선수는 동호회와 훈련 방법이 다르다 아마추어가 원하는 교육:재미있고 쉽게 프로가 원하는 교육 = 능력 향상 Top -down 방식의 한계 아마추어 동호회의 훈련 방식: 우선 만들자! 기본기는 무시! 개념은 나중에! 흥미를 잃지 않고 재미있게 학습할 수 있다 예제 중심의 재미있는 수업!? === 라이브 코딩 감상+ 따라하기 하향 평준화 처음엔 뭔가 되는 것 같은 착각 언젠가는 좌절(커뮤니케이션 x +이유를 모른다) 다시 처음으로 돌아오게 된다 copy&pasete 외에는 방법이 없고 응용은 힘들다 성장에 한계가 있다.
값, 값(value)은 더 이상 평가할 수 없는 하나의 표현식이다. 표현식은 값을 생성하는 문이다. 즉, 표현식은 평가되어 값을 생성한다. 10+20은 표현식이고, 이 표현식은 평가되어 30이라는 '값'이된다 10 + 20 객체는 프로퍼티+메소드? 프로퍼티 = 키+값
머지소트, 스택,큐 ,연결리스트 코드 # adapter pattern class Stack: def __init__(self): self.container=list() def empty(self): if not self.container: return True return False #래퍼 함수(wrapeer function) def push(self, data): self.container.append(data) def pop(self): return self.container.pop() def peek(self): return self.container[-1] # adapter pattern class Queue: def __init__(self): self.container=list() def empty(self): if not sel..
머지소트,스택,큐,연결리스트 merge sort 구현, merge sort 스택프레임 ( 노트) ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 스택, 큐 ADT : abstract data type 추상자료형 ->자료 구조의 인터페이스(함수 시그니처를) (오퍼레이션)을 명시해놓은것 -> 기능명세 요약)어떤 자료구조의 함수 사용법 ->구체적인 구현 설명이 들어가면 안된다! 기능과 구현의 구분 : 추상화! 존재하는 자료구조를 가지고 어떤 자료구조를 만들떄 ( 어댑터 패턴 이라고 한다) 1.배열, 2연결리스트 3 파이썬의 리스트 -> 연결리스트로 구현 STACK - LIFO 후입선출, 선입후출 후위표기법 계산기 미로찾기 이 두가지가, 자료구조 공부를 했는가 안했는가의 판단 기준 STACK의 ADT S.empty() -> Boolea..
오늘배운거 깊게 def insertion_sort(li): n=len(li) # for i in range(1,n): # temp=li[i] # for j in range(i-1,-2,-1): # if li[j]>temp: # li[i]=li[j] # li[j+1] =temp for i in range(1,n): temp=li[i] for j in range(i-1,-2,-1): if j == -1: break if li[j]>temp: li[j+1]=li[j] else: break li[j+1]=temp​ def get_middle_idx(li,start,mid,end): """ 리스트의 맨처음 값과 중간 값, 마지막값중에서 가운데 값이 위치한 인덱스를 반환한다. """ idx_li=[start,mid,end] if ..
네트워크, 퀵소트, isertion, selection 목차 ㅡ네트워크 ㅡ퀵소트 random pivot , O(nlogn) - 다른알고리즘은 최악을 고려하는데 퀵소트는 평균 ㅡ insertion, selection sort ㅡ merge sort 이후 ㅡ연결리스트 (배열과 연결리스트의 차이) 스택,큐(스택2개로 큐 구현하기), Tree(순회-전위,중위-스택계열,후위 레벨순서-큐 계열) nat : ip 라우팅 TCP/IP 4계층 application 1.htpp 2http 3ftp 4smtp 5dns http: 메시지기반 프로토콜 ->''문자열''이다 쓰고 주고받고 Translate( 포트, 전송계층) 특정 process INTERNET (IP ROUNTING) 특정 호스트 --------ARP(IP - > MAC) NETWORK INTERFACE(ETHERN..
하노이타워 def hanoi(n, _from, _by, _to): #base case if n==1: print(f'{n}번째 쟁반을 {_from}에서 {_to}로 이동 ') return hanoi(n-1, _from, _to, _by) print(f'{n}번째 쟁반을 {_from}에서 {_to}로 이동 ') hanoi(n-1, _by, _from ,_to) hanoi(3,a,b,c)를 입력했다고 치자 이 함수는 기저조건 n==1을 못맞춰서 프린트하지 않고 아래로 내려갈것이고 hanoi(2,a,c,b) print(2번째를 a -> c) hanoi(2, b,a,c)를 만들것이다 만들어는 두는데, 재귀 호출에 의해 hanoi(2,a,c,b)를 실행할 것이고 이는 이프문을 지나 hanoi(1,a,b,c) print(2번..