μ ν κ²μ (보μ΄λ²)
μ ν κ²μ
μμμ λ°°μ΄μμ μνλ λ°μ΄ν°λ₯Ό μ°Ύλ μκ³ λ¦¬μ¦
'μμμ'μΈ μ΄μ λ ν¬κΈ° μμλλ‘ μ λ ¬λ λ°°μ΄μ΄λΌλ©΄ 'μ΄μ§ κ²μ'μ μ¬μ©νλ κ²μ΄ λ«λ€.
μμ 무μμ. λ°°μ΄μ μμμλΆν° λ°μ΄ν°λ₯Ό νμΈνλ€. κ³μ° μκ°μ O(n)
μ) μ§μ ν κ°κ³Ό λ°°μ΄μ κ°μ΄ κ°μ κ²½μ° μ’ λ£. λ°°μ΄μ κ°μ κ°μ΄ μ€λ³΅μΌλ‘ μμ κ²½μ°μλ, μ²μ λ°κ²¬λ μμ μ μ’ λ£νλ€.
x=68μΈ κ²½μ°, '1'
μνλ κ°μ΄ λ°κ²¬λμ§ μμ κ²½μ° '-1'μ νμνλ€. -1μ μΈλ±μ€λ‘ μ¬μ©ν μ μλ κ°μ΄κΈ° λλ¬Έ
#include <stdio.h>
#define LENGTH 10
int main(void) {
int x = 0;
int pos = -1;
int a[] = { 72, 68, 92, 88, 41, 53, 97, 84, 39, 55 };
printf("μ
λ ₯ν μ«μ : ");
scanf_s("%d", &x);
printf("λ°λ³΅ μ€ν μ : x = %d, pos = %d\n", x, pos);
// λ°°μ΄μ λκΉμ§ νμΈνμ§ μμκ³ , μνλ κ°μ΄ λ°κ²¬λμ§ μμλ€λ©΄ λ°λ³΅νλΌλ μλ―Έ
for (int i = 0; i < LENGTH && pos == -1; ++i) {
if (a[i] == x) {
pos = i;
}
printf("λ°λ³΅ μ€ν μ€ : i = %d, pos = %d\n", i, pos);
}
printf("%d\n", pos);
printf("λ°λ³΅ μ€ν ν : pos = %d\n", pos);
return 0;
}
μ ν κ²μμ ν¨μ¨ννλ 보μ΄λ²μ κ°μ?
μ ν κ²μμ ν¨μ¨ννλ κΈ°μ λ‘μ¨ λ³΄μ΄λ³μ κ°λ μ μ΄μ©νλ '보μ΄λ²'μ΄ μλ€. = λμ λ°μ΄ν°
μ ν κ²μμ λ°°μ΄μ λμ 보μ΄λ²μ κ°μ ν΄λΉνλ λ°μ΄ν°λ₯Ό μΆκ°ν ν κ²μ νμλ₯Ό μ€μ¬ κ°μ λΉ λ₯΄κ² μ°Ύμ μ μλ€.
cf. 보μ΄λ²μ κ°μ΄ μμ λλμμ νλμ λν΄ λ κ°μ§ κ²μ¬κ° μ΄λ£¨μ΄μ§λ€.
μ) λ°°μ΄μμ 53μ μ°ΎμΌλ €λ©΄ 보μ΄λ²μ κ°μ 무μμΌλ‘ νλ©΄ μ’μκΉ?
λ°°μ΄μμ 53μ΄λΌλ κ°μ μ°Ύμ κ²½μ°, 보μ΄λ²μ κ°μ 53μΌλ‘ νλ€. 보μ΄λ²μ κ°μ΄ μμ λλ μμ νλμ λν΄ '53μΈκ°?'μ 'λμΈκ°?'λΌλλ κ°μ§ μ¬νμ νμΈνλ€. 보μ΄λ²μ μ¬μ©νλ©΄ 'λμΈκ°?'λΌλ νμΈμ΄ λΆνμν΄μ§λ€. μλνλ©΄ λ°°μ΄μ μ€κ°μ 53μ΄ μλλΌλ λμ 53μ΄ μ‘΄μ¬νκΈ° λλ¬Έ
λ°°μ΄μ μ΅μκ°κ³Ό μ΅λκ° κ΅¬νκΈ°
#include <stdio.h>
#define LENGTH 10
int main(void) {
int a[] = { 72, 68, 92, 88, 41, 53, 97, 84, 39, 55 };
int max, min;
max = a[0];
min = a[0];
for (int i = 0; i < LENGTH; ++i) {
if (a[i] > max) {
max = a[i];
}
if (a[i] < min) {
min = a[i];
}
}
printf("μ΅λκ° : %d\n", max);
printf("μ΅μκ° : %d\n", min);
return 0;
}