본문 바로가기

분류 전체보기225

[Python] is vs == Python에서의 is는 Java에서의 ==와 같이 주소값 비교? 같은 인스턴스인지 비교 인거 같고 Python에서의 ==는 오히려 Java에서의 =과 같이 값비교 인 것 같다. 2021. 10. 7.
[Python] list 유용 함수 https://vision-ai.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EB%A6%AC%EC%8A%A4%ED%8A%B8-count-%EC%99%80-len 파이썬 리스트(Python List) count() 와 len() 1. 찾고자 하는 항목이, 파이썬의 리스트에 몇개나 들어있는지 확인하는 count 함수 아래 예에서, fruits 리스트에 Mango 는 2개, Banana 는 1개가 들어있고, Guava 는 들어있지 않다. 따라서 내가 찾고자 vision-ai.tistory.com 찾고자 하는 항목이, 파이썬의 리스트에 몇개나 들어있는지 확인하는 count 함수 list.insert(index, value) : 원하는 위치에 값을 추가합니다 insert 함.. 2021. 10. 7.
[Python] boolean 자료형 알아두면 좋을 것 같다. 2021. 10. 7.
[Python] for문, tuple 활용 for문을 그냥 range, list 밖에 못쓰고 있었네... enumerate에서도 쓰고 tuple도 잘 써보자 dictionary도 keys()랑 values(), items()를 잘 쓰자 https://programmers.co.kr/learn/courses/2/lessons/313 파이썬 입문 - break, continue - 실습(1) ### 수료증 발급 관련 현재 수료증 관련 요청이 폭증하고 있습니다. 프로그래머스는 특별한 경우를 제외하고는 **무료 강의** 에 대해 수료증을 발급하지 않고 있습니다. 증빙용 수료증이 필요하 programmers.co.kr 이 문제에서 enumerate 활용했듯이 잘 써보자 이제 C언어처럼 쓰지 좀 말고 2021. 10. 7.
[CS/자료구조] Array를 이용한 스택과 큐의 시간 복잡도 https://www.boostcourse.org/cs204/lecture/625951/?isDesc=false 자바로 구현하고 배우는 자료구조 부스트코스 무료 강의 www.boostcourse.org 배열(array)에서 스택과 큐를 구현할 때 시간 복잡도는 어떻게 될까? array를 통한 스택(Stack) 구현은 강의에서 만든 addLast, removeLast 메소드(맨뒤 추가, 맨뒤 삭제)를 이용하면 결국 둘 다 O(1)의 시간복잡도가 나와서 구현 가능하다. addFirst, removeFirst 조합으로 하면 각각 시간복잡도가 O(n)이기 때문에 절대 안된다. -> Array로 Stack 구현 가능! 하지만 큐(Queue)의 경우 addLast, removeFirst의 조합이나 addFirst,.. 2021. 10. 7.
[JAVA] 인터페이스 인터페이스는 멤버 변수 - 상수(따라서 final 예약어를 통해 멤버 변수를 선언해야하고 static 예약어도 붙여야한다.), 메소드 - 추상메소드 만 가지게 함으로써 추상 클래스보다 더 완벽한 추상화를 제공한다고 한다. (일반변수는 가지지 못하고, 일반 메소드도 가지지 못한다.) 인터페이스가 이래서 필요하군 또, 'is a~' 관계가 아니거나, 다중상속을 받고 싶을 때 인터페이스를 이용한다 일반적으로 자바는 단일 상속만 가능하게 한다. 인터페이스도 클래스랑 비슷하게 사용 가능 2021. 10. 7.
[JAVA] 추상 클래스, 객체 형변환 어렵다. 뭔말인지 알듯하면서도 잘 와닿지가 않는다. 나는 학습을 할 때 항상 "왜?"라는 질문이 따라오는 것 같다. 추상 클래스를 왜 사용해야 하는지 형변환을 왜 해야하는지 추상 클래스는 결국 범용성을 위해서 사용하는 듯 하다. 예를 들어 각 TV class마다 method들이 다 같은 동작인데 이름을 다르게 쓰고 있다고 해보자 TV 사용자 입장에서 A사의 TV를 쓰다가 B사의 TV로 바꿨을 때 method 이름들이 달라서 다시 method 이름들을 일일이 학습해야하는 불상사가 생길 수 있는 것이다. 이를 방지하고자 부모 class인 TV class에서 추상 method로 미리 이름은 다 지정해놓는 거다. 그러면 자식들이 그거를 가져다가 overriding하면서 다른 TV지만 같은 기능들을 같은 meth.. 2021. 10. 7.
[CS/자료구조] 고려해야 할 경계조건 5가지 경계 조건 Boundary Conditions - Empty data structure - Single element in the data structure - Adding / removing beginning of data structure - Adding / removing end of the data structure - Working in the middle 어떤 자료 구조든 아래의 경계 조건에서 문제가 생기진 않을지 생각해봐야 합니다. 1. 자료 구조가 비어있는 경우 2. 자료 구조에 단 하나의 요소가 들어있을 때 3. 자료 구조의 첫 번째 요소를 제거하거나 추가할 때 4. 자료 구조의 마지막 요소를 제거하거나 추가할 때 5. 자료 구조의 중간 부분을 처리할 때 출처: https://www.bo.. 2021. 10. 6.
[Python] sys.stdin.readline Python으로 백준 알고리즘 문제 풀이 중 동빈나 님의 알고리즘 강의를 보고 계수 정렬을 구현해봤다. https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 분명히 O(N)으로 코드를 짜놨는데도 자꾸자꾸 시간 초과가 나오는 거였다. 코드에 오류가 있나 6번을 날렸다..ㅠ 그러던 중 질문 게시판에서 시간 초과의 가장 큰 오류는 입력에 문제가 있다고 했다. 출력은 print와 sys.stdout.write가 큰 속도 차이가 없는 것으로 보인다. 입력이 문제인데 모두들 하는.. 2021. 10. 5.
[JAVA] 매개변수 - 기본형|값복사, 참조형|주소복사 가끔 강의 듣다가 보면 참조형 변수 참조형 변수 해서 무슨 말인가 했는데 결론적으로 보면 우리가 보통 생각하는 복사는 기본형 변수, 값 복사이고 C로 따지면 포인터에 가까운 개념인 것 같다. JAVA에서는 포인터를 안쓴다고 했으니.. 정확히는 모르겠지만. 아무튼 메모리 주소 복사가 참조형 변수다. 정수형의 경우에는 그 int 메모리에 바로 값이 저장이 되는데 list변수 경우에는 list 변수에 (간단히 말해서) 각 요소값들의 주소값이 저장되기 때문에 참조형 변수-> 주소값 복사가 돼서 같은 게 되는 것 같다. 어떤 블로그였는지 모르겠는데 거기에 따르면 참조형은 참조되는 객체의 별칭으로 사용된다고 2021. 10. 5.