배열 및 문자열 처리 실습
실습 1: 배열에서 최솟값과 최댓값 찾기
다음은 주어진 배열에서 최솟값과 최댓값을 찾는 코드입니다.
코드 보기
#include <stdio.h>
#define SIZE 5
void getData(int arr[], int size);
void displayData(int arr[], int size);
void findMinMax(int arr[], int size, int *min, int *max);
int main() {
int data[SIZE];
int minValue, maxValue;
...
7월 2일 02:06에 게시됨
C++에서의 배열과 포인터
C++ 책이나 튜토리얼 대부분은 배열과 포인터를 함께 다룹니다. 그 이유는 무엇이며, 둘 사이에는 어떤 연관성이 있을까요?
C++에서 배열과 포인터는 밀접하게 연결되어 있으며, 주요 관계는 다음과 같습니다.
1. 배열 이름은 포인터다
대부분의 상황에서 배열 이름은 배열의 첫 번째 요소를 가리키는 포인터로 암시적으로 변환됩니다. 예를 들어, int arr[5];라는 배열 ...
6월 29일 18:28에 게시됨
PTA 배열과 정렬, 탐색 문제 풀이 및 핵심 알고리즘 설명
함수형 문제풀이
6-1 2차원 배열에서 최댓값과 그 위치 찾기
이 문제는 이중 반복문을 통해 2차원 배열 전체를 순회하며 최댓값과 해당 인덱스를 추적하는 기본적인 탐색 문제다. 전역 변수 Row와 Col에 최댓값의 위치를 저장해야 하며, 초기값 설정 시 주의가 필요하다.
int fun(int arr[4][M]) {
int maxVal = arr[0][0];
Row = 0; Col = 0;
for (int i = 0; ...
6월 28일 23:45에 게시됨
C++로 배우는 배열과 연결 리스트 기본 연산
배열 (Array)
1. 배열 초기화
// 스택에 할당
int arr[5];
int nums[5] = { 1, 2, 3, 4, 5 };
// 힙에 할당
int* agg = new int[5];
int* ngg = new int[5] {1, 2, 3, 4, 5};
2. 요소 접근
int getElement(int* data, int idx) {
return *(data + idx);
}
3. 데이터 삽입
void insertElement(int* data, int len, int value, int pos) {
for (int i = len - ...
6월 20일 19:52에 게시됨
Go 언어에서 '...' (줄임표) 연산자 완벽 정리
Go 언어에서 세 개의 점으로 이루어진 줄임표 연산자는 다양한 상황에서 사용됩니다. 이 글에서는 이 연산자의 세 가지 주요 용법을 실제 코드와 함께 설명하고, 자주 마주칠 수 있는 함정들을 짚어보겠습니다.
1. 배열 선언 시 길이 자동 결정
배열 리터럴에서 길이를 명시하는 자리에 줄임표를 사용하면, 초기화되는 요소의 개수에 따라 배열의 크기가 자동으로 결정됩 ...
6월 20일 00:21에 게시됨
C 언어: 배열 초기화와 포인터 선언의 심층 분석
C 언어에서 배열과 포인터는 프로그램의 근간을 이루는 중요한 개념이지만, 그 선언 방식과 의미는 미묘한 차이로 인해 많은 개발자에게 혼란을 야기합니다. 예를 들어, int intArray[3] = {11, 22, 33};와 같이 정수형 배열을 선언하고 초기화하는 방법은 매우 일반적입니다. 또한, int *ptr = intArray;와 같이 배열의 시작 주소를 가리키는 포인터를 정의하는 것도 가능 ...
6월 8일 22:50에 게시됨
두 정수 배열에서 공통되지 않은 원소 찾기
두 개의 정수 배열이 주어졌을 때, 두 배열 모두에 동시에 존재하지 않는 원소를 찾아야 한다. 즉, 한쪽 배열에는 있지만 다른 쪽에는 없는 값을 출력하는 문제이다. 출력은 입력 순서대로 이루어져야 하며, 중복된 값은 한 번만 출력되어야 한다.
입력 형식
첫 번째 줄과 두 번째 줄에 각각 배열의 크기 N(≤20)과 N개의 정수가 공백으로 구분되어 주어진다.
출력 형식
...
6월 8일 20:37에 게시됨
Ramda로 불변적으로 배열 다루기
이 글은 함수형 프로그래밍 시리즈 'Thinking in Ramda'의 일곱 번째 편입니다. 지난 Part 6에서는 객체를 함수적이고 불변적인 방식으로 다루는 방법을 살펴보았습니다. 이번에는 배열을 동일한 원칙으로 다루는 방법을 알아보겠습니다.
배열 요소 읽기
Part 6에서 객체 속성 읽기를 위한 prop, pick, has 등의 Ramda 함수를 배웠습니다. 배열에는 이에 대응하는 더 많 ...
6월 8일 04:04에 게시됨
제2주 예습, 실험 및 과제: Java 기본 문법 2, 객체 지향 기초
제2주 예습, 실험 및 과제: Java 기본 문법 2, 객체 지향 기초
목차- 0. 과제 완료 안내
예습
1.1 학습 목표
1.2 예습 과제
1.3 수업 전 질문 목록
실험
수업 후 과제
3.1 온라인 학습 플랫폼
3.2 PTA 프로그래밍 (중요)
3.3 클래스룸 (사례 1-초기 접촉)
확장 자료
과제 완료 안내
본 예습의 "1.3 수업 전 질문 목록"은 수업 전에 완료하시 ...
6월 4일 02:27에 게시됨
코드포스 대회 문제 풀이: B, C번 풀이 모음
최근 진행된 Codeforces 대회들의 주요 문제 풀이를 모아서 정리했습니다. 각 문제는 배열 처리, 구간 합, 그리디 알고리즘 등의 기법을 활용하여 효율적으로 해결할 수 있습니다.
Educational Codeforces Round 132 (Div. 2) – B번
수열이 주어질 때 특정 구간에서 인접 원소 간 차이의 합을 구하는 문제입니다. 오른쪽으로 이동할 때 증가 폭과 감소 폭을 각각 별도로 ...
5월 22일 09:50에 게시됨