전체 글

전체 글

    [HTML & CSS] HTML 주석 태그 <!-- -->

    HTML에는 다른 프로그래밍언어처럼 주석을 달 수 있습니다. 코드 편집기에서는 보이지만 소스로만 표시되며, 실행 후 화면상에서는 표시되지 않습니다. 태그의 안에 삽입하며 기본구조는 다음과 같습니다. 예시는 다음과 같습니다. 예시)

    [Python] 파이썬 : 람다(lambda) 함수

    파이썬에는 함수를 한 줄로 표현해주는 기능이 있습니다.  람다(lambda)함수라고 불리우는 람다 표현식이 바로 그것입니다. 형식은 다음과 같습니다.  lambda 매개변수 : 표현식  1. 람다함수  1-1. 두 수를 곱해주는 함수)def multiple(x, y): return x * yprint(multiple(4, 5))  결과)20결과로 20이 나왔습니다.   다음은 똑같은 연산을 람다함수를 사용해 보겠습니다.  'lambda 매개변수 : 식'의 구성으로 이루어진다고 말씀드렸습니다.  하지만 이 상태로는 함수를 호출할 수 없습니다. 람다 표현식은 이름이 없는 함수를 생성하기 때문에 익명함수(anonymous function)라고도 부릅니다.  익명함수를 호출하기 위해서는 함수를 담아줄 그릇..

    [Algorithm] 가장 긴 증가하는 부분 수열(longest increasing subsequence)

    가장 긴 증가하는 부분 수열이라는 알고리즘이 있습니다. 어떠한 수열의 부분수열에서 증가하는 부분수열 중 가장 긴 부분수열을 의미합니다. 다이나믹 프로그래밍 문제를 해결할때 주로 사용됩니다. 특정 수열 A가 주어졌을때 가장 긴 증가하는 부분 수열의 길이를 찾는 문제가 있습니다. A = [ 10 20 10 30 20 50 ] 가장 긴 증가하는 부분 수열은 두가지 방법으로 해결할 수 있는데 하나는 시간복잡도 O(N2)로 해결하는 방법이고 다른 하나는 시간복잡도 O(NlogN)으로 해결하는 방법입니다. 1. 시간복잡도 O(N2) 가장 긴 증가하는 부분수열 문제에서 각 dp[i]값은 주어진 수열의 특정 값을 마지막 원소로 가지는 부분 수열의 최대 길이를 의미합니다. 여기서 특정값은 인덱스 i를 의미하고 A[i]의..

    [Python] 파이썬 진수 변환 hex(), oct(), bin(), int()

    파이썬에는 진수를 변환할 수 있는 내장함수가 있습니다.  그 내장함수로는 hex, oct, bin, int인데 각각 16진수, 8진수, 2진수, 10진수입니다.  하나씩 사용법을 알아보겠습니다.  1. hex()  16진수는 변환함수는 hexadecimal의 앞글자 3개를 따와서 hex입니다.  16진수는 맨 앞에 전두사로 0x가 붙습니다.  hex함수는 입력에 해당하는 숫자를 16진수로 변경해 줍니다.   hex함수의 반환형은 문자열입니다.  a = hex(314)print(a)print(type(a))  결과)0x13a  2. oct()  8진수는 변환함수는 octal number의 앞 3글자를 따와서 oct입니다.  8진수는 맨 앞자리 접두사로 0o가 붙습니다.  oct함수는 입력에 해당하는 숫자를..

    [Python] 파이썬 remove(), pop(), del 차이점

    파이썬은 리스트에서 요소를 삭제하는 3가지 방법을 지원합니다. remove, pop, del이 그것입니다. 비슷하지만 조금씩 다른 3가지 함수에 대해 알아보겠습니다.  1. remove()  remove()는 파이썬 리스트에서 제공하는 함수입니다. 리스트의 요소를 제거할때 값으로 제거합니다.  company = [ 'SamSung', 'Nexon', 'Naver', 'Kakao' ]company.remove('Nexon')print(company)  결과)['SamSung', 'Naver', 'Kakao']  remove는 삭제하려는 항목이 리스트에 없는 경우 ValueError를 리턴합니다.company = [ 'SamSung', 'Nexon', 'Naver', 'Kakao' ]company.remov..

    [Python] 파이썬 heap 자료구조, heapq 모듈 사용

    힙은 최대값과 최소값을 빠르게 찾아주는 자료구조이며 완전 이진 트리를 기반으로 하고, 우선순위 큐 알고리즘이라고도 부릅니다. 힙은 최대 힙과 최소 힙으로 나뉘는데 파이썬에서 제공하는 heapq는 최소 힙을 기본으로 합니다. 최소 힙 : 부모 노드의 키값이 자식 노드의 키값보다 항상 작은 힙 최대 힙 : 부모 노드의 키값이 자식 노드의 키값보다 항상 큰 힙 heap의 데이터 삽입과 삭제는 O(logN)의 시간 복잡도를 보장합니다. 부모 노드와 자식 노드이 인덱스 관계는 다음과 같습니다. 1. 부모 노드 인덱스 = 자식 노드 인덱스 // 2 2. 왼쪽 자식 노드 인덱스 = 부모 노드 인덱스 * 2 3. 오른쪽 자식 노드 인덱스 = 부모 노드 인덱스 * 2 + 1 즉, 부모 노드 인덱스를 k라 하면 왼쪽 자식..