본문 바로가기

분류 전체보기

(454)
파이썬 딕셔너리 해쉬(Hash), 딕셔너리 (매핑형 자료 구조) dic=dict() or dic={}을 이용하여 정의 key:value 쌍으로 구성 인덱싱을 대신하여 ["key"]값으로 접근 dic[key]=value로 값 설정 가능 (단일 수정) dic.update({key:value}) : 키가 없는 값이면 추가, 키가 있는 값이면 변경 (다중 수정) del dic[key] : 딕셔너리에서 해당 key값을 가지는 key,value 쌍 삭제 dic.keys() : 키 값들을 리스트로 받는다 dic.values() : value 값들을 리스트로 받는다 dic.items() : (key,value) 튜플로 구성된 값들을 리스트로 받는다 dic.get(key) : 해당 하는 key대한 value를 가져옴, dic.get(k..
완주하지 못한 선수 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participant/completion/return ["leo", "kik..
python-출력 숫자(출력) print(round(result,2)) print('%.2f' %ans) 문자(출력) format, f"" 이용 scores = [ {'name':'영수','score':70}, {'name':'영희','score':65}, {'name':'기찬','score':75}, {'name':'희수','score':23}, {'name':'서경','score':99}, {'name':'미주','score':100}, {'name':'병태','score':32} ] # str(숫자) => 문자로 변형 f-string은 f'{변수명}' for s in scores: print(s) name=s['name'] score=s['score'] print(name,score) print(name+"의 점수는..
python-입력 입력 1-1. 여러 개의 숫자를 공백을 구분으로 하여 입력 받기 N, M, K=map(int, input().split()) N, M, K=map(int, input().split()) print(N,M,K) # 입력창에 5 6 7 과 같이 세 숫자를 공백과 함께 입력 1 2 3 1 2 3 1-2. 문자열로 이루어진 숫자값을 2차원 리스트로 입력 받기 graph=[] for _ in range(3): graph.append(list(map(int,input())) # case1 graph=[] for _ in range(3): graph.append(list(map(int,input()))) print(graph) # 01010 # 10101 # 11111 # [[0, 1, 0, 1, 0], [1, 0,..
알고리즘 개요 알고리즘 개요 : 경우에 따라 시간과 공간에 얼마나 효율적인지 파악하여 적절한 알고리즘을 생각해 구현하자!! 0.Computational Thinking이란? Computational Thinking은 4가지로 되어 있습니다. 분해: 복잡한 문제를 작은 문제로 나눕니다. 패턴 인식: 문제 안에서 유사성을 발견합니다. 추상화: 문제의 핵심에만 집중하고, 부차적인 것은 제외합니다. 알고리즘: 이렇게 정의한 문제를 해결하는 절차입니다(일반화와 모델링은 여기에 포함됩니다). 복잡한 문제를 해결하는 것은 어렵지만, 작은 문제를 해결하는 것은 비교적 쉽습니다. 작은 문제를 해결하다 보면 복잡한 문제를 해결하게 됩니다. 컴퓨터 공학에서 배우는 알고리즘은 대부분 정형화된 문제에 대해 검증된 해법을 제시하는 과목입니다...
클래스 상속과 인터페이스 구현 함께 사용 extends 부터하고 implements 한다. package Basic_Grammar.chap3_OOP.ch12_inherit_interface; public class BookShelfTest { public static void main(String[] args) { Queue bookQueue=new BookShelf(); bookQueue.enQueue("토지1"); bookQueue.enQueue("토지2"); bookQueue.enQueue("토지3"); bookQueue.enQueue("토지4"); bookQueue.enQueue("토지5"); System.out.println(bookQueue.getSize()); System.out.println(bookQueue.deQueue());..
여러 인터페이스 구현하기 자바의 다중 상속이 안되는 이유 : 다이아몬드 문제 (다중상속 받았을 때 모호성->안정성 중시) (인터페이스의 경우 다중상속이 가능) 여러 인터페이스 구현 (오픈마켓에서 손님이 판매자이자 구매자가 될 수 있는 상황이라 생각) package Basic_Grammar.chap3_OOP.ch11; public class CustomerTest { public static void main(String[] args) { Customer customer=new Customer(); customer.buy(); customer.sell(); customer.order(); customer.hello(); //upcasting Buy buyer=customer; buyer.buy(); buyer.order(); Se..
interface 여러가지 추가된 요소 (default 메서드, 정적 메서드, private 메서드) package Basic_Grammar.chap3_OOP.ch10; public class CalculatorTest { public static void main(String[] args) { int[] arr={1,2,3,4,5}; int total=Calc.total(arr); System.out.println(total); } } package Basic_Grammar.chap3_OOP.ch10; public interface Calc { double PI=3.14; int ERROR=-999999999; int add(int num1,int num2); int substract(int num1,int num2); int divide(int num1,int num2); int multiply(in..