본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


전체 글674

전력망을 둘로 나누기 (프로그래머스, Level 2) 문제 설명 n개의 송전탑이 전선을 통해 하나의 트리 형태로 연결되어 있습니다. 당신은 이 전선들 중 하나를 끊어서 현재의 전력망 네트워크를 2개로 분할하려고 합니다. 이때, 두 전력망이 갖게 되는 송전탑의 개수를 최대한 비슷하게 맞추고자 합니다. 송전탑의 개수 n, 그리고 전선 정보 wires가 매개변수로 주어집니다. 전선들 중 하나를 끊어서 송전탑 개수가 가능한 비슷하도록 두 전력망으로 나누었을 때, 두 전력망이 가지고 있는 송전탑 개수의 차이(절대값)를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 2 이상 100 이하인 자연수입니다. wires는 길이가 n-1인 정수형 2차원 배열입니다. wires의 각 원소는 [v1, v2] 2개의 자연수로 이루어져 있으며, 이는 전력망의.. 2022. 6. 7.
리액트 환경에서의 캔버스 (React Html canvas) 리엑트로 다양한 기능을 만들다가 캔버스(canvas)를 사용하기 위해 구글링을 좀 해 보았습니다. 대략 아래처럼 캔버스 객체(context)에 대해서 상태(state)를 유지하는 코드가 참 많았습니다. const ref = useRef(null); const [ctx, setCtx] = useState(); //캔버스 컨텍스트를 useState로 상태관리 useEffect(()=>{ const canvas = ref.current const context = canvas.getContext('2d') setCtx(context) }, []) useEffect를 통해서 캔버스의 컨텍스트 객체(context)를 가져오기 위해서 ctx값을 state로 관리해야 합니다. 안그러면 ctx객체에 대한 상태관리가 필.. 2022. 6. 3.
#3. 타입스크립트 임포트, 익스포트(Typescript import export) 타입스크립트에서의 import 기능과 export 기능은 Javascript에서의 기능과 거의 비슷 합니다. 먼저 외부로 보내고자 하는 기능은 아래처럼 export 명령어를 통해 가능 합니다. function select(calback?: Function) { } function insert(param: DBform, calback?: Function) { } function update(param: DBform, calback?: Function) { } function remove(param: DBform, calback?: Function) { } export { select, insert, update, remove}; 이러한 함수가 존재한다고 가정하여 봅니다. export 명령어에 외부에서 사용.. 2022. 5. 30.
리액트 익스프레스 웹소켓 (React, Express typescript, websocket) 리액트와 Node.js의 익스프레스 프레임워크를 활용하여 만들어본 채팅 프로그램 입니다(with 웹소켓) 리액트는 버전 18로 구성되어 있으며 함수형으로 되어 있습니다. 익스프레스 서버는 4.18버전이며 타입스크립트(Typescript) 환경으로 구성 하였습니다. #1. 익스프레스 서버(Express server) 익스프레스 서버에서는 아래 3가지 역할을 하도록 되어 있습니다. 0) 회원 가입 및 로그인 응답 1) 채팅방 만들기 2) 채팅방 전달하기 타입스크립트를 활용하면 데이터 형식(type)을 지정 할 수 있습니다. 이런 훌륭한 기능을 사용하기 위해 채팅방과 관련된 타입을 먼저 정의하여 보았습니다. //소캣 객체 타입 입니다. type soketT = { ws: WebSocket; //웹소캣 객체 입.. 2022. 5. 27.
Javascript Map 객체 문자로 변경(Javascript map object stringfy) 자바스크립트에서 맵(map)객체는 일반적으로 JSON.stringfy를 통해서 문자로 치환되지 않습니다. 아무생각없이 JSON.stringfy 함수를 사용해서 치환했는데 값이 나오지 않아서 조금 당황했던 것 같습니다. stringfy함수와 parse함수에는 변경할 값에 대한 규칙을 두번째 파라미터로 받습니다. 옵셔널한 기능이지요. 이러한 규칙을 함수형태로 만들어 사용하면 대체 가능한 기능을 만들 수 있습니다. //맵을 문자로 function replacer(key, value) { if(value instanceof Map) { //형식 확인 return { dataType: 'Map', //정의 value: Array.from(value.entries()), //entries 함수를 통해 배열로 변경(.. 2022. 5. 26.
#2. 타입스크립트 제네릭, 타입(Typescript generics, type) 타입스크립트(Typescript) 공부를 처음부터 다시 하면서 개념과 원리를 정리하고 있습니다. 타입스크립트(typescript)에서의 꽃은 제네릭과 타입 입니다. 제네릭은(generic) 자바(Java)라는 프로그래밍언어를 많이 접해본 사람 이라면 쉽게 다가갈 수 있는 영역 입니다. 데이터의 자료형을 지정해 주는 방법으로 지정된 이외의 다른 데이터가 들어가지 못하게 할 수 있습니다. 1. 제네릭(generic) let array = [] //오직 숫자만 들어가야되는 배열이라 가정 합니다. array.push(123) //정상적인 입력1 array.push(456) //정상적인 입력2 array.push('hello') //어...이건 들어가면 안되는데...; 위 내용처럼 어떠한 숫자형식의 데이터만 필요.. 2022. 5. 19.