20250706 logseq
This commit is contained in:
parent
975b835214
commit
ada993b645
1
pages/card.md
Normal file
1
pages/card.md
Normal file
@ -0,0 +1 @@
|
||||
-
|
||||
@ -88,12 +88,69 @@ deck:: Logseq/coding tip
|
||||
else return acc+v;
|
||||
},0); //9
|
||||
```
|
||||
- ### **◼︎ Array.sort((a,b)=>{콜백함수})** #card
|
||||
id:: 686a6dfd-328e-4dd0-bd8a-abbef2ae13ee
|
||||
- **배열을 정렬하는 매서드이고 기본적으로 파라미터를 입력하지 않으면 오름차순으로 정렬한다.**
|
||||
- **반환값은 없고 원본 배열 자체를 변경한다.**
|
||||
- **이 정렬 알고리즘은 배열의 데이터를 무조건 문자형으로 보고 정렬(사전순)하기 때문에 숫자를 정렬할 때는 이상하게 정렬이 될 수도 있다.**
|
||||
- [10,2,5,9,8,7] 을 오름차순 정렬하면 [2,5,7,8,9,10] 이 되어야 하지만 이걸 문자로 보고 정렬하기 때문에 실제로는 [10,2,5,7,8,9] 로 정렬된다.
|
||||
- **숫자에 대해서 제대로 정렬하기 위해서는 콜백함수를 넣어줘야 한다.**
|
||||
- a와 b는 각각 인덱스 기준으로 보면 a가 b보다 앞선 인덱스에 있는 두 요소들을 의미한다.
|
||||
- 이 두 요소 사이의 인덱스 간격은 신경쓰지 않는다. 그저 a가 앞에 있다는 것만 기억하자.
|
||||
- 이때 이 a와 b의 관계식을 통해 콜백함수의 반환값을 설정해서 이 관계식이 모든 정렬이 끝난 뒤에 이 반환값이 모두 false가 되면 정렬이 완료된 것으로 취급한다.
|
||||
- **예시**
|
||||
- ```javascript
|
||||
const arr = [5,9,7,4,3,2,8];
|
||||
arr.sort((a,b)=>a-b); //[2,3,4,5,7,8,9] 오름차순
|
||||
// 이전 인덱스 요소와 다음 인덱스 요소의 차이가 모두 양수가 아니게 되도록 정렬한다
|
||||
arr.sort((a-b)=>b-a); //[9,8,7,5,4,3,2] 내림차순
|
||||
// 이전 인덱스 요소와 다음 인덱스 요소의 차이가 모두 음수가 아니게 되도록 정렬한다
|
||||
```
|
||||
- ## **❖ Python**
|
||||
- ### **► 이차원 배열(n*m) 생성** #card
|
||||
id:: 6867f994-13d0-4937-90e9-d8aec7be5d67
|
||||
- ```python
|
||||
arr = [[0]*m for _ in range(n)]
|
||||
```
|
||||
- ### **► 배열 관련 매서드**
|
||||
- ### **◼︎ arr.count(value)** #card
|
||||
id:: 686a721d-df2e-4662-a6dd-c235cce8c5ac
|
||||
- 리스트, 혹은 문자열에서 특정 값의 개수를 반환하는 매서드
|
||||
- ```python
|
||||
string = "aaabbcccc"
|
||||
print(string.count('a')) # 3
|
||||
print(string.count('b')) # 2
|
||||
print(string.count('c')) # 4
|
||||
|
||||
arr = [1,2,2,3,3,3,4,4,4,4]
|
||||
print(arr.count(1)) # 1
|
||||
print(arr.count(2)) # 2
|
||||
print(arr.count(3)) # 3
|
||||
print(arr.count(4)) # 4
|
||||
```
|
||||
- ### **◼︎ arr.sort()** #card
|
||||
id:: 686a726b-38e3-4adc-836a-2d0856046e73
|
||||
- 원본 배열 자체를 정렬하는 매서드.
|
||||
- 기본값은 오름차순이고 파라미터에 reverse=True 를 하면 내림차순으로 정렬됨.
|
||||
- 문자열에도 정렬이 가능함.
|
||||
- 단 문자열이 문자들로 이뤄진 리스트로 바뀌게 됨으로 다시 문자열로 바꾸기 위해서는 join을 이용해서 합쳐줘야함.
|
||||
- ```python
|
||||
arr = [5,8,2,4,9]
|
||||
arr.sort() # 2 4 5 8 9
|
||||
arr.sort(reverse=True) # 9 8 5 4 2
|
||||
```
|
||||
- ### **◼︎ sorted(arr)** #card
|
||||
id:: 686a732c-734e-417c-b7e2-f3bfb8caa71b
|
||||
- 변수로 들어온 배열을 정렬한 뒤 그 결과를 반환하는 매서드, 즉 반환값이 배열임.
|
||||
- 기본값은 오름차순이고 파라미터에 reverse=True 를 하면 내림차순으로 정렬됨.
|
||||
id:: 686a734e-b423-486f-8ec7-e5491e310fe0
|
||||
- ```python
|
||||
arr = [5,8,2,4,9]
|
||||
arr1 = sorted(arr)
|
||||
arr2 = sorted(arr, reverse=True)
|
||||
print(arr1) :-> # 2 4 5 8 9
|
||||
print(arr2) # 9 8 5 4 2
|
||||
```
|
||||
- ## **❖ C**
|
||||
- ## **❖ Java**
|
||||
- ## **❖ 프로그래밍 관련 이론 정리**
|
||||
@ -1,70 +1,5 @@
|
||||
deck:: Logseq/coding tip
|
||||
|
||||
- ## **배열관련 팁 모음**
|
||||
- **Javascript**
|
||||
-
|
||||
-
|
||||
- **arr.sort()**
|
||||
- arr의 데이터들을 오름차순으로 정리함.
|
||||
id:: 68595f48-e964-47fe-9b89-9f0aa4eeed3e
|
||||
- 기본적으로는 데이터들을 문자열로 보고 정렬하기 때문에 숫자가 제대로 정렬되지 않는 경우가 있음.
|
||||
- 매서드 괄호 안에 콜백함수를 넣어서 숫자들을 정확하게 오름차순 혹은 내림차순으로 정렬할 수 있음.
|
||||
- 오름차순
|
||||
id:: 68595fed-e1f0-4fb3-8c27-6650027c0749
|
||||
- ```javascript
|
||||
let arr = [10,5,7,2];
|
||||
arr.sort((a,b)=>a-b);
|
||||
console.log(arr) // 2,5,7,10
|
||||
```
|
||||
- 내림차순
|
||||
id:: 6859607c-2839-490a-9f49-8ba86607905c
|
||||
- ```javascript
|
||||
let arr = [10,5,7,2];
|
||||
arr.sort((a,b)=>b-a);
|
||||
console.log(arr) // 10,7,5,2
|
||||
```
|
||||
- **python**
|
||||
- **arr.count(value)**
|
||||
id:: 6857c84c-711b-4865-ba82-92c2d81c0e0b
|
||||
- 리스트 혹은 문자열에서 특정 값의 개수를 리턴하는 매서드
|
||||
- ```python
|
||||
string = "aaabbcccc"
|
||||
print(string.count('a')) # 3
|
||||
print(string.count('b')) # 2
|
||||
print(string.count('c')) # 4
|
||||
|
||||
arr = [1,2,2,3,3,3,4,4,4,4]
|
||||
print(arr.count(1)) # 1
|
||||
print(arr.count(2)) # 2
|
||||
print(arr.count(3)) # 3
|
||||
print(arr.count(4)) # 4
|
||||
```
|
||||
- **arr.sort()**-1
|
||||
id:: 685960df-7858-4413-b448-1b34facec439
|
||||
- 리스트를 정렬하는 매서드.
|
||||
- 리스트를 정렬해서 기존 리스트를 정렬된 형태로 바꿈.
|
||||
- arr.sort(reverse=True) 이렇게 하면 내림차순으로 정렬됨.
|
||||
- 예제코드
|
||||
id:: 685961bd-0be6-49ff-9a07-f5b2eb371030
|
||||
- ```python
|
||||
arr = [5,8,2,4,9]
|
||||
arr.sort() # 2 4 5 8 9
|
||||
arr.sort(reverse=True) # 9 8 5 4 2
|
||||
```
|
||||
- **sorted(arr)**
|
||||
id:: 6859617a-f536-4f57-9cfd-6e4291369c1a
|
||||
- 입력한 리스트를 정렬해서 새로운 리스트를 반환하는 함수
|
||||
- 기본적으로는 오름차순정렬이고, sorted(arr, reverse=True) 로 하면 내림차순임.
|
||||
- 예제코드
|
||||
id:: 68596251-f733-4854-902e-faf055a64330
|
||||
- ```python
|
||||
arr = [5,8,2,4,9]
|
||||
arr1 = sorted(arr)
|
||||
arr2 = sorted(arr, reverse=True)
|
||||
print(arr1) # 2 4 5 8 9
|
||||
print(arr2) # 9 8 5 4 2
|
||||
```
|
||||
-
|
||||
-
|
||||
- ## **진수변환 알고리즘**
|
||||
- **B진수 숫자 N을 10진수로 바꾸는 법(누적곱 방식)**
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user