오늘도 기운차게 강의를 들어 보겠습니다! OSI 7계층 클라이언트와 서버 🖥️ 클라이언트 : 네트워크상에서 서버에게 서비스를 요청하는 장비 컴퓨터, 노트북, 핸드폰, 아이패드 등… 서버 : 네트워크상에서 서비스를 제공하는 장비 공유기, 도메인 관리기(DNS), IP 할당기(DHCP), 시간관리기(NTP), 게이트웨이 등… 서버 종류 및 서비스 공유기 : 네트워크에서 파일이나 프린터를 공유하게 해준다. 도메인 관리기(DNS) : 도메인 주소(naver.com)로 IP주소를 찾게 해준다. IP 할당기(DHCP) : 네트워크에 새로 접속한 장비에 IP주소와 네트워크 설정을 해준다. 시간관리기(NTP) : 네트워크상에 장비들의 시간을 알맞게 맞춰준다. 게이트웨이 : 여러대의 장비가 외부 네트워크에 접속하게 해준..
어제에 이어 CS강의를 진행해 보도록 하겠습니다! 1. DBMS 정리 1-1. DBMS 개요 DBMS란 Database Management system의 준말로 모든사용자가 데이터를 모으고 사용 할 수 있습니다. 1-2. DBMS 용어 튜플(Tuple) 테이블에서 행을 의미합니다. 같은 말로는 레코드(Record) 혹은 로우(Row)라고도 부릅니다. 튜플은 릴레이션에서 중복되는 값을 가질 수 없습니다. 튜플의 수는 카디날리티(Cardinality) 라고 합니다. 어트리뷰트(Attribute) 테이블에서 열을 의미합니다. 같은 말로 칼럼(Columm)이라고도 부릅니다. 어트리뷰트(Attribute)의 수를 의미하는 단어는 **디그리(Degree)**라고 합니다. (Degree : 정도 → 도가 지나치다.)..
이번주부터는 cs에 대해서 공부를 시작합니다! CPU와 메모리 우리가 사용하는 컴퓨터의 구조를 일상생활에 비교를 해보자! 푸드 트럭 컴퓨터 컴퓨터에는 입력장치 출력장치 기억장치 연산장치 등등이 있습니다. 입력장치 마우스 키보드 카메라 출력장치 스피커 모니터 등등 cpu의 구성 사람의 두뇌에 해당되는 cpu의 구성이다. cpu안에서도 산술 논리를 위한 (ALU), 제어(CU)를 위한 버스, 메모리 유닛으로 레지스터와 캐시가 있습니다. 더보기 프로세서에 위치한 고속 메모리로 극히 소량의 데이터나 처리 중인 중간 결과와도 같은 프로세서가 바로 사용할 수 있는 데이터를 담고 있는 영역을 레지스터라고 한다. 컴퓨터 구조에 따라 크기와 종류가 다양하다. 용도에 따라 범용 레지스터와 특수목적 레지스터로 구분된다 범용..
오늘은 문제를 먼저 풀이를 다해서 문제 풀이 부터 적도록 하겠습니다 가장 먼 노드 처음에 문제를 잘못 이해 하여서 최단거리계산 중에서 가장거리가 긴 노드의 거리인 줄 알고 계산을 했는데 그게 아니라 가장거리가 긴 노드의 갯수는 몇개 인가 였습니다… return distance.count(max(distance)) 그래서 카운트를 써서 리스트 중에서 맥스 값과 같은 수가 몇개가 있는지 출력해주면 됩니다! # Code from collections import deque def solution(n, edge): # 그래프 생성 graph = [[] for _ in range(n+1)] # 노드거리 distance = [0 for _ in range(n+1)] # 그래프 엮기 for i in edge: gra..
튜터님 강의 다 기억해두자고 트리란 무엇인가?? 1대 n의 관계를 가지고 있어야 한다. 순서가 없음. 부모와 자식 관계가 있다. 서브 트리 = 트리중에서 다시 루트를 잡아서 보는 방법 리프 노드 = 자식이 없는 노드 자손 노드 = 자신 밑에 있는 모든 자식 노드 완전 이진트리 = 1,2,3,4,5 노드가 순서대로 있을 때 그냥 이진트리는 1,2,5,6,7이라도 상관없다. 트리 순회 방법 전위 순회 위에서 부터 아래로 중위 순회 제일 좌 또는 우측 부터 진행 후위 순회 최하위 부터 최상위 까지 이진 탐색 트리 왼쪽은 부모보다 작은 값 오른 쪽은 부모보다 큰 값 여기서 중위 순회를 하면 내림차순 오름차순이 된다. 힙(heap) 키값이 큰 노드나 작은 노드를 찾는 법 키값에 중복이 있으면 안됨! heap이 아..
오늘도 튜터님의 강의로 하루를 시작해 봅시다! Queue를 이용한 너비우선 탐색 BFS from collections import deque 큐를 사용하기 위해서 import 해주어야 하는 순열을 구하는 방법을 재귀가 아닌 큐를 이용해서도 만들어 줄 수 있다 이때 맨처음에 1,2,3,4를 큐에 넣어주고 만들어지는 조합마다 다시 큐에 마지막에 넣어준다는 개념으로 접근을 할 수 있다. BFS 미로탐색 풀이 이 개념을 정확하게 이해하게 되었습니다. bfs를 위해서는 큐를 주로 사용하고 dfs를 위해서는 재귀를 주로 이용한다는 말이 이제는 이해가 되더라고요...ㅎㅎ BFS의 장점 최단경로 찾기가 가능하다! 전염이 되는 경우! DFS와 달리 제일 먼저 얻어진 해가 최단경로가 된다! 가는 길이 한 가지 방법이 아닐..
어제 다 풀지 못했던 문제를 마저 풀었습니다.. 피보나치 1 코드가 기본적으로 주어지 때문에 파이썬 방식으로 기입을 하고 카운터를 넣어주면 됩니다. 다만 python3으로 실행하면 시간 초과가 되므로 pypy3로 작동을 해야 하더군요 count1 = 0 count2 = 0 def fib(num): global count1 if num == 1 or num == 2: count1 += 1 return 1 # 코드1 else: return fib(num - 1) + fib(num - 2) def fibonacci(num): global count2 f = [0] * (num + 1) f[1] = f[2] = 1 for i in range(3, num + 1): count2 += 1 f[i] = f[i - 1..
오늘도 알고리즘의 한 주가 시작 되었습니다! 튜터님의 강의 스택 2 탐색 알고리즘에 유망한지 아닌지를 따녀야 한다. 기본적인 예시! 의사결정 공간 트리, 상태 공간 트리 백트레킹에 개념중에 중요한 부분 이거 아주 중요합니다.. 이 순서를 잘 몰라서 자꾸 틀렸어,,, DFS, BFS 깊이 우선 탐색, 넓이 우선 탐색 드라마 한 방에 몰아보기 : DFS 드라마 하나 씩 나올 때 마다 보기 : BFS DFS(Depth First Search) 깊이우선탐색 DFS는 스택을 이용하기 때문에 stack을 이용해서 만든다.!!! BFS 이 친구는 큐를 이용해서 풀이! 햄버거 다이어트 처럼 재료를 골라야 할 때 재료는 모두 고르는 것이 좋은 것이 아니라 재료의 조합에 따라 값이 다른 경우를 비교 할 때!! 이걸 더 짧..
튜터님 수업 데이터 타입 데이터 타입은 효율이다! 트리구조! 트리구조는 상하관계가 있다! 그래프는 서로가 서로를 이어주고 있다! 소셜망같은 느낌 오늘의 메인 디쉬! 자료를 배울 때에는 구조와 연산이 중요하다!!! 맨위를 탑! 탑을 꺼낼 때에는 pop 밀어넣기 뒤로가기가 스택에 가장 기본적인 예시! 스택의 연산방법! 백트래킹!! 한정조건을 걸어준다! 가지치기를 한다! 오늘도 즐거운 문제 풀이시간! 와 오늘은 정말로 맵다! 괄호 # Code import sys # 표준 입력을 파일로 설정 sys.stdin = open("input.txt", "r") # 테스트 숫자 입력 test = int(input()) # 테스트 숫자 만큼 반복 for _ in range(test): # 입력 값을 단어마다 나누어서 리스..
튜터님 강의 SW Expert Academy SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 여기서 문제 풀이도 해보자. 문제 1 import sys #표준입력을 파일로 설정 sys.stdin = open("input.txt","r") def list_odd(x): global found_text for line in x: for index in range(len(line) - n + 1): if line[index:index + share] == line[index + share: index + (share * 2)][::-1]: found_text += 1 def list_even(x): global fou..