본문 바로가기

분류 전체보기

(110)
[내일배움캠프 11일차 TIL] 자료구조 - 연결리스트(Linked list)/스택(Stack) 더보기내가 너무 어려워했던 알고리즘과 자료구조....코드 자체를 이해하기 어려워서 거의 놓아버렸지만이걸 놓으면 코테를 할 수가 없다는 사실,,,,,,절망적이지만 어쩌겠어... 해야지......자료 구조에는 여러 종류가 있지만, 오늘 알아볼 자료구조는 연결리스트와 스택이다. 연결리스트?연결리스트는 데이터의 구조를 순서대로 저장하는 자료구조로각 요소는 데이터와 다음 노드를 가리키는 포인터로 이루어져 있다 연결리스트는 스택(stack), 큐(queue), 그래프(graph) 등의 자료구조를 구현할 때 많이 사용한다.  연결리스트는 위와 같은 형태를 가진다고 볼 수 있다그래서 만약 데이터의 삽입이 필요한 상황이 생기면  이렇게 포인터를 바꾸어주어서 데이터를 삽입하거나 삭제하기에 용이하다는 것이다   연결리스트의..
[내일배움캠프 02주차 WIL] 보호되어 있는 글입니다.
[내일배움캠프 10일차 TIL] 이중리스트 풀기 with python Today's Trigger 더보기오늘도 코드카타로부터 시작된 TIL오늘의 문제는 문자열 내 마음대로 정렬하기https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  나의 제출 답안은 https://github.com/duswo3o/algorithm_codekata/blob/main/0705.py 여기로! 이중리스트는 리스트 안에 리스트가 있는 형태를 말한다예를들어l = [["a","b"],["c","d"]]이런 형태의 리스트를 이중리스트라고 하는데위 리..
[내일배움캠프 09일차 TIL] 파이썬에서 클래스 이해하기 Today's Trigger더보기우리 얼레벌레조의 SA문서 중 기능상세 부분을 작성하기 위해 ERD를 알아보던 중 클래스에 대한 조금 더 깊은 이해가 필요했다그래서 오늘은 클래스에 대해 작성하려고 한다!class 기본 클래스는 객체를 표현하기 위한 문법으로 데이터와 기능을 함께 묶어준다그래서 클래스는 속성(attribute)과 메소드(method)를 포함하는 것이 일반적이다 예를 들어 자동차라는 클래스가 있다면이 클래스의 속성으로는 종류, 색깔, 속도 등의 속성(attribute)등을 가질 수 있고앞으로 이동, 뒤로 이동, 운행 종료 등의 동작 즉 메소드를 가질 수 있을 것이다 class Car: def __init__(self, color,speed, distance=0): self...
[내일배움캠프 08일차 TIL] ASCII(아스키코드) with python Today's trigger더보기오늘자 알고리즘 코드카타 문제는 시저암호로https://school.programmers.co.kr/learn/courses/30/lessons/12926 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  이 문제를 푸는 것이었다문제를 보자마자 든 생각이 아스키코드를 이용해야겠다는 생각이 들었다  아스키코드는 무엇인가?아스키(ASCII)는 미국 국립 표준 협회에서 표준화한 정보교환용 7비트 부호 체계이다그래서 문자를 아스키를 통해 변환하면 숫자이 값으로 얻을 수 있는 것이다 파이썬에서는 ord()라는 내장 함수를 사용해서 문자를..
[내일배움캠프 07일차 TIL]무한루프 반복문 파이썬 첫 번째 개인과제는 업다운 게임을 만드는 것만들어야 할 프로그램에는 다음과 같은 기능을 포함해야 했다컴퓨터는 1부터 100 사이의 랜덤한 숫자를 생성플레이어는 숫자를 입력하고, 입력한 숫자와 컴퓨터의 숫자를 비교하여 '업' 또는 '다운' 힌트를 제공플레이어가 컴퓨터의 숫자를 정확히 맞히면 시도한 횟수를 알려줌플레이어가 숫자를 맞힐 때까지 위의 과정을 반복위 조건을 만족하는 프로그램을 짜는 것은 크게 어렵지 않았다import randomcomputer = random.randint(1, 100)while True: player = int(input("숫자를 입력하세요 : ")) if player == computer: print("맞았습니다.") break ..
[내일배움캠프 06일차 TIL] 비밀번호 해싱 with hashlib in python 비밀번호 해싱은 왜 하는가?사용자의 패스워드를 데이터베이스에 그대로 저장하게 되면 데이터베이스에 접근할 수 있는 모든 사람에게 패스워드를 그대로 노출하게 된다.그래서 패스워드를 암호화하기 위한 방법 중 하나로 hash를 사용하는 것이다. hash의 특징?hash 함수는 동일한 입력값에 대한 동일한 출력값을 가짐입력값이 아주 조금만 변경되어도 출력값은 크게 바뀜해쉬 함수는 항상 같은 방향(일방향)으로만 작동함위와 같은 특징을 가지고 있다 hash의 문제?해쉬 함수는 레인보우 테이블을 기반으로 암호화가 진행된다그래서 레인보우테이블을 알면 비밀번호 해킹이 가능한 것!이 문제때문에 생겨난 것이 "salt"  그럼 "salt"는 무엇인가?salt는 짧은 랜덤 텍스트로 패스워드를 데이터베이스에 저장할 때사용자가 입..
[내일배움캠프 01주차 WIL] 보호되어 있는 글입니다.