분류 전체보기

프로그램이 메모리를 할당받는 방법 - 정적(프로그램 시작 전 미리 정해진 크기의 메모리를 할당받는 방식) - 동적(필요한 시점에 할당을 받고 필요없을 때 해제하는 방식) c언어의 경우 malloc 함수와 free 함수를 사용한다. c = (int *)malloc(20 * sizeof(int)); 명령을 실행하면 기존에 있던 c 에 있던 데이터들은 사라진다. 따라서 c에 있는 데이터를 d로 복사하고 c를 크기가 20인 메모리를 생성한 다음 d에 있던 데이터를 c에 옮긴다. top은 데이터가 얼마만큼 들어갔는지 알려주는 변 스택이 비었으면 top 은 -1의 값을 가지고 만약 10개의 데이터가 삽입되어 있으면 top은 9의 값을 가지고 있는다. 과제. 다음주 월요일까지 void pushAt(int index,..
배열 - 항목의 개수 제한(메모리를 지정한 만큼만 사용가능) 연결리스트 - 크기가 제한되지 않음(메모리를 필요한만큼만 사용가능) 과제 : 항목의 개수가 제한이 없는 스택을 만들기 삽입 삭제가 가능한 스택을 만들기 2주차 목표 - 스마트한 배열 만들기(파이썬의 리스트처럼) 파이썬 리스트(동적 배열) ● 배열의 크기를 지정하지 않는다. ● 배열의 용량을 늘릴 수 있다. ● 지정한 인덱스에 항목을 추가할 수 있다. ▶크기가 10인 배열에 수가 다 차있고 새로운 수가 추가되어야 하는 경우 1. 크기가 20인 배열을 새로 만들고 기존 10의 크기의 배열의 수를 20의 배열에 복사하고 새로운 수를 추가한다. 2. 그리고 기존의 10 크기의 배열은 해제한다.
패턴인식 - 얼굴인식, 숫자인식, 표정인식 패턴인식 : 주어진 입력 데이터를 어떤 기준에 따라 몇 개의 패턴의 그룹으로 나누고 각 데이터가 어떤 그룹에 해당하는 지를 결정하는 것
1. 기능 : 로또 회차를 입력하면 해당 회차에서 선정된 번호들은 빼고 숫자들을 랜덤으로 생성하여 출력한다. 2. 과정 : 로또 회차별 번호를 추출할 수 있도록 로또 api 를 가져온다. JSONObject 클래스를 이용하여 JSON 형식의 데이터를 파싱하여 Java 객체로 변환한다. {"totSellamnt":114578905000,"returnValue":"success","drwNoDate":"2024-02-24","firstWinamnt":1957990849,"drwtNo6":44,"drwtNo4":37,"firstPrzwnerCo":14,"drwtNo5":39,"bnusNo":27,"firstAccumamnt":27411871886,"drwNo":1108,"drwtNo2":19,"drwtNo3"..
https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 위 문제는 최대한 진행할 수 있는 회의의 수를 출력하는 문제인데 회의 시간이 겹치지 않도록 해야한다. 예를 들어 1 4 5 7 이런 식으로 한 시간 차이로 진행할 수 있으며 1 4 4 4 4 5 이런 식으로 회의 시작 시간과 종료 시간이 같은 경우에도 가능하며 이 경우 출력은 3이 된다. ※위 문제 핵심 1. 종료시간을 기준으로 오름차순 정렬한다. 2. 종료시간이 같고 시작 시간이 다른 경우는 또 시작시간을 기준으로 오름차순 해야한다. ▶코드 import java.util.*; import java.io.*; p..
https://www.acmicpc.net/problem/1417 1417번: 국회의원 선거 첫째 줄에 후보의 수 N이 주어진다. 둘째 줄부터 차례대로 기호 1번을 찍으려고 하는 사람의 수, 기호 2번을 찍으려고 하는 수, 이렇게 총 N개의 줄에 걸쳐 입력이 들어온다. N은 50보다 작거나 같 www.acmicpc.net 다음 문제는 주어진 수들 중 최대값을 찾아 arr[0]의 값과 +1, -1 씩 교환하고 최대값이 arr[0] 으로 되기 전까지 다시 최대값을 찾아 이 계산을 반복한다. ▶코드 import java.util.*; import java.io.*; public class Main { public static void main(String[] args) throws IOException { B..
● WAS(Web Application Service) : 사용자의 입력을 받아 서버에서 무언가를 처리하고 그 결과를 보여주는 동적인 데이터를 처리하는 웹서버(스프링 부트에는 톰캣 서버가 내장되어 있다.)  ● IDE(Integrated Development Environment) : 통합 개발 환경(ex. 이클립스, 인텔리제이)  ● ORM(Object Relational Mapping)  : sql 을 사용하지 않고 자바 문법으로도 데이터베이스를 다룰 수 있도록 하는 도구  ● JPA(Java Persistence API) : 자바에서 ORM 을 사용하기 위한 인터페이스를 제공하는 API 이다.  ● CRUD : Create, Read, Update, Delete 의 앞글자만 따 만든 단어로 데이터 ..
https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 위 문제는 정점의 개수 N 간선의 개수 M 탐색을 시작하는 정점의 번호 V 를 입력받고 그 다음 줄에는 연결된 정점을 입력으로 받는다. 4 5 1 1 2 1 3 1 4 2 4 3 4 위 예제를 그림으로 나타내면 다음 그림처럼 정점과 간선이 연결되어 있는 형태로 나타난다. ▶코드 import java.util.*; import java.io.*; public c..
https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 위 문제는 1번 컴퓨터와 연결된 컴퓨터의 수를 찾는 문제로 DFS 로 문제 풀이를 하였다. 기존 DFS 함수에 count 변수를 추가하여 답을 추출하였다. ▶코드 import java.util.*; import java.io.*; public class Main { static int N, M; static int count=0; static int Edge_arr[][]; static boolean ..
공부 기록장
'분류 전체보기' 카테고리의 글 목록 (10 Page)