분류 전체보기
-
EC2 ubuntu 포트 포워딩 iptables : unrecognized serviceAWS 2021. 8. 11. 00:12
2021.08 EC2 Amazon Machine Image(AMI) : Ubuntu Server 20.04 LTS (HVM), SSD Volume Type node.js 서버 배포한 후 포트없이 연결되도록 iptables로 포트 포워딩하는데 발생한 에러 정리 결론 : 포기하고 nginx 했음 뭔가 ubuntu 20에서는 iptables가 안되는 게 아닐까,,? 아니 근데 ubuntu 기본 방화벽 도구라는데 왜 안됨..? 어이 X ✅ 포트포워딩 방법으로 찾은 내용 iptables를 이용해서 80포트를 다른 포트로 연결하면 된다. 보안그룹 인바운드 규칙도 확인한다. REF 더보기 iptables로 포트 리다이렉트 (2019) iptables로 EC2 포트포워딩 (2020) iptables로 EC2 포트포워딩..
-
프로그래머스 - 쇠막대기 (JavaScript)etc/coding test 2020. 5. 5. 14:43
문제 : https://programmers.co.kr/learn/courses/30/lessons/42585 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 1) 처음 시도한 방법 -> 테스트 케이스 1개가 시간초과 1) 쇠막대기를 보관하는 스택을 만든다. 2) input으로 들어온 string을 순환한다. 2-1) "(" 인 경우 2-1-1) 다음 인덱스에 ")"이 나온다? -> 레이저 2-1-2) 스택에 남아있는 모든 막대기에 레이저를 추가한다. 다음인덱스까지 확인했으므로 i+=1 해줌 2-1-2) 레이저가 아니라면 새로운 쇠막대기의 ..
-
프로그래머스 - 문자열 압축 (JavaScript)etc/coding test 2020. 5. 4. 08:30
문제: https://programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 1개씩 자르고 길이 확인 2개씩 자르고 길이 확인 3개씩 자르고 길이 확인 ... 위의 과정을 최대로 자를 수 있는 길이인 string.length/2 한 후 소수점 이하는 버린 값까지 반복한다. Ex. 길이가 5인 string이면 최대로 자를 수 있는 길이는 2다. 1. 자를 수 있는 길이를 1부터 max까지 반복하면서 2. 문자열을 압축하고 그 길이가 최소값이면 answer를 교체한..
-
[Java vs JavaScript] Array(배열) 뭐가 다를까?etc/computer science 2020. 4. 29. 00:11
대충 자바를 먼저 배우고, 자바스크립트를 배웠는데 1. 자바는 배열을 선언할 때 크기를 정해서 선언한다. 자바에는 리스트라는 배열과 비슷한데 다른 자료구조가 있다. 2. 자바스크립트는 크기를 정하지 않고 그냥 선언한다. 이름은 배열인데 마치 자바의 리스트같은 느낌이다. 3. 자바스크립트는 타입을 여러 개 섞어 쓸 수 있다는 거 당시에 처음 자바스크립트를 하면서 생각한 건 저게 전부였는데, 도대체 어떤 차이가 있는 건지 자바를 다 까먹은 지금,,, 기억이 안 나서 여기 저기 찾아보고 정리하려고 한다. 우선 배열이 정확하게 뭔지 짚고 넘어가자. 배열이란? 객체 자료형의 하나로, 하나의 변수에 여러 개의 값을 저장할 수 있는 자료형이다. 배열은 객체이기 때문에 속성(객체가 가진 값)과 메소드(객체가 실행하는 ..
-
Array(배열) vs Linked List (연결리스트) 비교etc/computer science 2020. 4. 28. 23:58
배열이란? (링크) Linked List란? (링크) 자료구조를 공부할 때 꼭 내가 쓰는 언어를 생각하다 보니까 배열을 자꾸 자바스크립트 배열로 생각하려고 하니까 헷갈렸다. 자바스크립트는 일반적인 배열의 정의에서 벗어나기 때문이다. Ex. 길이가 고정 되어있지 않음 등 자료구조로서 배열과 연결리스트를 비교해보자. 1) 메모리 (제목을 뭐라고 지어야할지...) 실제 메모리상에서 배열은 "연결된" 하나의 블록으로 저장되고, 연결리스트는 독립적으로 저장하되 다음 노드의 위치를 참조한다. 아주 큰 데이터를 저장하려고 하면 메모리에 그 큰 데이터를 하나의 연결된 블록으로 저장할 수 없을 수도 있다. 결국 이렇게 메모리를 사용하기 때문에 배열은 처음부터 정해진 크기를 갖는 것이다. 만약 배열을 사용하다가 메모리가 ..
-
스키마와 쿼리 디자인database 2020. 4. 28. 13:08
개인 프로젝트 DB 스키마 짜기 전에 관련 내용을 정리하려고 한다. 하나의 서비스를 만든다고 가정할 때화면의 구성을 상상해보면 👉 어떤 데이터가 필요한지 알 수 있다.어떤 데이터가 필요한지 쭉 적어보고, 그 데이터들의 관계를 정하면데이터의 구조에 따라 서버를 만들고, 클라이언트를 만든다. 지금까지 진행할 프로젝트는 이런 순서로 진행했다.화면의 큰 그림을 생각하고, 스키마를 짜고, API 문서를 작성했다. 데이터 베이스 스키마란?데이터 구조를 짜는 것, 그 설계도를 스키마라고 부른다.간단한 수강신청 시스템을 예로 들어, 데이터베이스 스키마를 짜는 법에 대해 알아보자. 수강신청 시스템에서 필요할 것 같은 데이터들을 추려보면 이렇게 정리해 볼 수 있다.교수님, 강의, 학생 각각 하나의 테이블이고,어쩌고 저쩌고..
-
프로그래머스 - 튜플 (JavaScript)etc/coding test 2020. 4. 28. 09:45
문제:https://programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 처음에 문제를 잘못 이해해서 튜플을 나타내는 집합의 요소 중 가장 긴 게 곧 튜플인 줄 알았다.. 집합으로 각 요소의 위치를 확인할 수 있으려면 집합의 크기가1인 것부터 차례대로 확인해야 했음 인풋이 string이기 때문에 원하는 모양을 만드는 게 조금 복잡했다. 1. 인풋을 배열로 쪼갠다. 2. 배열을 정렬한다. 3. 정렬된 배열을 순환하면서 튜플을 채운다. 코드 function sol..
-
프로그래머스 - 124 나라의 숫자 (JavaScript)etc/coding test 2020. 4. 27. 20:33
문제 : https://programmers.co.kr/learn/courses/30/lessons/12899 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 과정 처음 생각한 모양은 이랬다.. 그래서 너비우선탐색으로 푸는 건가? 했는데,, 코드를 어떻게 짜야 할 지 감이 안 왔다;; 깊이우선탐색은 많이 풀어봐서 재귀로 만들겠는데.. 너비우선탐색은 어떻게... 하는거지..? 그래서 일단 규칙을 생각해보려고 노력했다. depth가 1일 때는 3까지 표현할 수 있고, depth가 2일 때는 3 + 9 해서 12까지 표현할 수 있고, depth가 3일..