일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 서버설정
- 선형대수
- 자료구조와 함께 배우는 알고리즘 입문
- 목록처리
- network configuration
- /etc/network/interfaces
- iterator
- 코드로배우는스프링부트웹프로젝트
- 친절한SQL튜닝
- 스프링부트핵심가이드
- resttemplate
- 자료구조와함께배우는알고리즘입문
- 알파회계
- baeldung
- 데비안
- 자바편
- 처음 만나는 AI 수학 with Python
- d
- 네트워크 설정
- Kernighan의 C언어 프로그래밍
- 코드로배우는스프링웹프로젝트
- ㅒ
- 이터레이터
- GIT
- 페이징
- 처음 만나는 AI수학 with Python
- 티스토리 쿠키 삭제
- 리눅스
- 스프링 시큐리티
- 구멍가게코딩단
- Today
- Total
목록분류 전체보기 (406)
bright jazz music
퀵 정렬은 비교 정렬에 속한다. 비교 정렬이란 버블 정렬과 같은 분류인데, 버블정렬이 자신의 다음 인덱스의 원소와 비교해 정렬해 나가는 것처럼 퀵 정렬은 피벗(pivot)을 선택하여 비교 기준점을 만들고 비교하며 정렬을 진행한다. 퀵 정렬은 3단계로 진행된다. 1단계: 배열 중 원소 하나를 선택한다. 이 원소를 피벗이라고 한다.2단계: 피벗 앞에는 피벗보다 작은 값의 원소를 두고, 피벗 뒤에는 값이 큰 원소들이 오도록 배열을 '분할'한다. 분할 후 피벗의 위치는 변경되지 않는다.분할된 2개의 작은 배열에 대해 앞의 과정을 반복한다. 배열의 크기가 0 또는 1이 될 때까지 반복한다. 퀵 정렬과 합병정렬은 유사해 보이지만 차이가 있다. 합병정렬은 언제나 배열을 균등하게 절반으로 나누어 비교하지만, 퀵 정렬은..
합병(병합)정렬은 분할 정복 알고리즘 중 하나이며, 일반적으로 데이터의 안정성을 훼손하지 않는다.분할 정복은 크게 3단계로 구성된다. 1) 분할(Divide): 최소단위까지 문제를 분할한다.2) 정복(Conquer): 최소 단위 문제를 각각 해결하여 정복한다.3) 결합(Combine): 최소 단위 문제에 대한 결과를 원래 문제에 대한 결과로 조합하여 해결한다. 분할-정복의 3단계:1단계: 배열을 계속해서 반으로 자른다. 원소가 1개가 될 때가지 자른다.2단계: 자른 순서의 역순으로 한 쌍씩 값을 비교하여 합쳐간다.3단계: 하나의 배열이 될 때까지 2단계 과정을 반복한다. function mergeSort(arr) { // 배열의 길이가 1 이하면 정렬이 필요없으므로 그대로 반환 if (arr..
while문을 사용한 삽입정렬의 일반형 function insertionSort(arr) { for (let i = 1; i = 0 && arr[j] > key) { arr[j + 1] = arr[j]; j--; } arr[j + 1] = key; } return arr;} for문을 사용하는 경우 아래와 같다.function insertionSort(arr) { for (let i = 1; i = 0 && arr[j] > key; j--) { arr[j + 1] = arr[j]; } arr[j + 1] = key; } return arr;} 오름차순 삽입정렬 로직을 가지고 있는, 배열을 파라미터로 받는 함수의 경우 아..
// 오름차순 정렬 (최솟값 찾기)function bubbleSortAscending(array) { const len = array.length; for(let i = 0; i array[j+1]) { // 오름차순을 위한 비교 [array[j], array[j+1]] = [array[j+1], array[j]]; swapped = true; } } if(!swapped) break; } return array;} // 내림차순 정렬 (최댓값 찾기)function bubbleSortDescending(array) { const len = array.length; for(let i = 0; i
버블 정렬이 맨 앞부터 하나씩 올라가며 위치를 찾아가는 방법이라면 선택 정렬은 맨 아래부터 값을 쌓아나가는 방법이라고 할 수 있다.배열을 한 바퀴 돌면서 가장 작은 값을 찾아내 0번 인덱스에 배치하고, 남은 정렬을 다시 순회하면서 그 중에서 가장 작은 값을 찾아내 그 다음 인덱스인 1번에 배치한다. 즉 계속해서 최솟값을 찾아내 스왑해 주는 것이다. 선택정렬의 3단계 1단계: 주어진 배열 중 최솟값 찾기2단계: 값을 맨 앞에 위치한 값과 교체3단계 맨 처음 위치를 뺀 나머지 배열을 위의 방법으로 반복하여 교체 //오름차순 정렬: 가장 작은 요소를 찾아 앞으로 이동function selectionSort(array) { const len = array.length; // 배열의 처음부터 끝에서 두..
1. 데이터 추가 테스트package com.test.mallapi;import com.test.mallapi.domain.Todo;import com.test.mallapi.repository.TodoRepository;import lombok.extern.log4j.Log4j2;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import java.time.LocalDate;@SpringBootTest@Log4j2public class TodoRepositoryTests { ..
-- 1. DB설정2. 프로젝트에서 domain 패키지 만들고 거기에 Entity 생성하고 @Id와 @GeneratedValue(strategy = GenerationType.IDENTITY)로 설정package com.test.mallapi.domain;import jakarta.persistence.*;import lombok.*;import java.time.LocalDate;//엔티티를 사용해서 DB와 애플리케이션 사이의 데이터를 동기화 하고 관리@Entity@Table(name="tbl_todo")@Getter@ToString@Builder@AllArgsConstructor@NoArgsConstructorpublic class Todo { @Id // DB의 pk가 됨 // 고유한 ..
https://github.com/hojuncha997/node-project/tree/main/node-textbook/basic node-project/node-textbook/basic at main · hojuncha997/node-projectContribute to hojuncha997/node-project development by creating an account on GitHub.github.com 노드 관련 리포지토리 https://github.com/hojuncha997/nestjs-pjt GitHub - hojuncha997/nestjs-pjtContribute to hojuncha997/nestjs-pjt development by creating an account on Gi..
echo. : echo. 명령은 배치 파일에서 빈 줄을 출력할 때 사용된다. 즉, 화면에 아무 것도 표시하지 않고 줄바꿈만 수행한다. 이것은 주로 배치 파일 내에서 출력을 구성할 때 가독성을 높이기 위해 사용된다. set /p : 이 명령은 Windows 배치 파일에서 사용자 입력을 받아 변수에 저장할 때 사용된다 set /p username=Please enter your name: @echo off title IP수동변경 PUSHD %~DP0 bcdedit >>nul if %errorlevel% == 1 goto noadmin :message cls echo. echo ------------------------------------------------------ echo. echo. echo IP..
AlarmSendPage: 알람 발송을 예약하는 페이지. 여러 개의 셀렉트 박스와 '수신자'라는 textarea 있다. AlarmAndSmsModal: '개인회원' 또는 '법인회원'을 검색하기 위한 모달창. 알람발송과 문자발송 페이지에서 공통으로 사용한다. 기본적으로 이 모달은 검색창, 검색버튼, 테이블 헤더로 이루어져 있다. 검색어를 넣고 검색하면 결과가 테이블 헤더 밑에 행으로 보여진다. 이 행들은 기본적으로 가장 좌측에 체크박스를 가지고 있다. handleCheckboxChange(el.user_id)} /> 만약 사용자가 특정 행의 체크박스를 체크했을 경우, 사용자 아이디가 이 모달의 부모 컴포넌트인 AlarmSendPage의 '수신자' textarea에 보여져야 한다. 이 때 보여지는 값은 'u..