목록CSE (86)
한 걸음 두 걸음
완성한 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { String str = "()))((()"; System.out.println(recurCheck(str)); } static //올바른 괄호 문자열인지 검사하는 함수 boolean isRight(String str) { int count = 0; boolean isRight = true; for(int i = 0 ; i < str.length(); i++) { if(str.charAt(i) == '(') count++; else count--; if(count < 0 ) { isRight = false; } } return..
그냥 IP가 대체 뭔지 그리고 그에 따라오는 서브넷 마스크, 게이트웨이 MAC이 대체 뭔지 이해하기 쉽게 적어보겠습니다. 그냥 궁금하신 분들을 위해 적는 것으로, 세세하게 이론적 정의나 작동방식에 대해 깊게 파고들지 않습니다. 간단하게 이해하기 IP : 컴퓨터를 찾아가기위한 인터넷 주소( = 네트워크주소 + 호스트주소 ) 서브넷마스크 : IP주소의 네트워크, 호스트주소를 나누는 기준을 알려주는 주소 게이트웨이주소 : 라우터의 주소 MAC : 각 기기들이 가진 고유한 주소값(모든 기기는 자신만의 MAC주소가 있습니다.) 이 아래부터는 자세하게 설명할께요~ 위에서부터 하나하나 읽어주세요 IP IP는 Internet Protocol의 약자입니다. 인터넷 프로토콜. 인터넷을 사용하기 위해 사용되는 약속된 체계로..
준비물 : 콘솔케이블, 스위치, 콘솔케이블호환 잭, 컴퓨터 1. 스위치 콘솔 터미널에서 터미널 에뮬레이터를 사용하여 스위치 설정 및 제어 방법 2. Telnet을 사용한 원격 설정 및 제어 방법 1. putty를 통한 스위치 제어 콘솔케이블을 스위치에 꽂고 호환잭(RS232케이블(Serial 포트를 USB 포트로 변환))을 케이블에 연결한 후 usb포트로 컴퓨터에 연결해줍니다. (* RS232C포트 = COM포트 = Serial포트 -> 산업장비와 컴퓨터 연결할 때 사용합니다.) 연결하면 컴퓨터 관리자모드로 켰을 때 장치관리자의 포트로 연결이 됐음을 확인하실 수 있습니다. 만약 인식이 안된다면 드라이버를 설치해주세요. 여러 도구가 있겠지만 제게 익숙한 putty를 활용해보겠습니다. 스위치는 리눅스기반이기..
VLSM = Variable Length Subnet Mask 가변길이 서브넷 마스크 위의 네트워크 상황에서 왼쪽 VLAN10에 필요한 IP갯수는 3개입니다.(라우터1, PC0, PC1) 하지만 서브넷마스크를 평소처럼 255.255.255.0 으로 설정하면 호스트주소가 2^8-2(255-2(브로드캐스트, 네트워크주소)) 해서 254개가 만들어지는데 3개만 사용하므로 251개의 낭비가 발생합니다. 그러므로 VLSM을 이용하여 IP주소가 낭비되는 것을 막습니다. *브로드캐스트주소 11111111 네트워크주소 00000000 :처음과 마지막 주소 사이의 주소만 IP 할당 가능 여기서 소요되는 호스트주소가 3개이므로 계산을 해봅시다. 2^n -2 >= 3일 때, 2^n >= 5 이므로 n = 3이됩니다. 즉 서..
2019년도 블라인드테스트에 나왔던 1번 문자열 압축 문제 JAVA풀이 문제 : https://programmers.co.kr/learn/courses/30/lessons/60057?language=java class Solution { public int solution(String s) { String exStr = s; String bufStr = ""; String resultStr = ""; int bufCount = 1; int resultLen = exStr.length(); int resultCount = resultLen; for(int i = 1 ; i 버퍼와 값이 다르므로 resultString = "aa" 추가해줌 bb buf = "aa" -> 버퍼와 값이 다르므로 resultStr..
소수찾기 복잡도 개선한 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int testCase = sc.nextInt(); int result = 0; for(int i = 0 ; i < testCase ; i++) { if(isDecimal(sc.nextInt())) result++; } System.out.print(result); sc.close(); } public static boolean isDecimal(int num) { if(num == 1) return false; for(int i = 2 ; i*i
이번엔 Vlan(virtual lan)을 설정하고 스위치와 라우터를 설정해보도록 하겠습니다ㅎㅎ 1. 스위치로 연결된 6개의 PC와 두 개의 vlan 사이의 통신 위는 스위치로 6개의 PC가 연결되어있고 PC0~2는 Vlan10 PC3~5는 Vlan20으로 설정되어있습니다. ( 이 또한 어떻게 하는지 자세히 살펴볼께요ㅎㅎ(잠깐 자다 일어나서 뭔가 컨디션이 좋네요..)) vlan을 설정하지 않은 상황이었다면, 스위치로 연결되어있는 PC0~5가 모두 통신이 가능한 상태였겠지만, vlan으로 나눌 것이므로 vlan10에 있는 PC0~2끼리는 통신이 가능해도, PC0이 vlan20에 있는 PC3과 통신하는 것은 불가능해집니다. (서로 다른 네트워크(vlan)으로 나눠져있는 것이므로, 같은 서브넷 안에서만 통신이 ..
★루트경로비용 중요! 1. STP STP: 스위치 사이에 존재하는 순환 경로를 자동으로 탐지하고 해제 스위치가 고장날 때를 대비해서 반드시 이중화를 해야하나, 이중화를 했을 때 발생하는 순환경로문제가 있으므로, STP(spanning tree protocol)을 사용한다. -> 일부 경로 논리적으로 blocking시킨다.(루프의 일부 경로의 가상 단절을 통해 트리 형태의 경로 구성) -> 가장 좋은 경로만 사용함 *순환경로문제 : Broadcast Storm, 특정 스위치에서 출발한 프레임이 여러 경로를 거쳐 다시 출발지 스위치로 돌아올 수 있는 순환 경로 (loop, 특정 스위치에서 출발한 프레임이 다른 스위치를 거쳐 다시 출발지 스위치로 되돌아 올 수 있는 경로) 형성으로 인해 발생 하지만 오른쪽 사..