์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜/์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฐฐ์—ด ํšŒ์ „, ์ •์  ๋ฐฐ์—ด ๋‚ด์—์„œ ํŠน์ • ์›์†Œ๋ฅผ ์„ ํƒํ•œ ์œ„์น˜๋กœ ์ด๋™ํ•˜๊ณ  ์‹ถ์„ ๋•Œ

Rainbow๐ŸŒˆCoder 2021. 12. 15. 19:45
728x90

๋ฐฐ์—ด ์ •๋ณด์™€ ์ธ๋ฑ์Šค ์ •๋ณด๊ฐ€ ๋‘๊ฐœ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

ํŠน์ • ์›์†Œ์˜ ์›๋ž˜ ์ธ๋ฑ์Šค์™€ ์›์†Œ๋ฅผ ๋ณด๋‚ด๊ณ  ์‹ถ์€ ์œ„์น˜์˜ ์ธ๋ฑ์Šค์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋‘ ์ธ๋ฑ์Šค ์‚ฌ์ด๋ฅผ for๋ฌธ์œผ๋กœ ๋Œ๋ฉด์„œ ๋ฐฐ์—ด์„ ํ•œ์นธ์”ฉ ๋‹น๊ฒจ์ค˜์•ผํ•˜๋Š” ๋‹ค์†Œ ๋ฒˆ๊ฑฐ๋กœ์šด ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค.

<1>

์•„๋ž˜ ์ฝ”๋“œ๋Š” 8๋ฒˆ์งธ ์ˆซ์ž๋ฅผ 2๋ฒˆ์งธ ์œ„์น˜๋กœ ๋ณด๋‚ด๊ณ  ์‹ถ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ์ž‘์„ฑํ•œ ๊ฒƒ์ด๋‹ค.

#include <iostream>
#include <array>

using namespace std;

void ratate(array<int, 10>& arr, int wantPos, int target)
{
	int last = arr[t];
	for (int i = t; i > s; i--)
	{
		arr[i] = arr[i-1];
	}
	arr[s] = last;
}
int main() {
	array<int, 10> arr = {1,2,3,4,5,6,7,8,9,10};
	ratate(arr,2,8);
	for (int i = 0; i < arr.size(); i++)
	{
		cout << arr[i] << '\t';
	}
    return 0;
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ

1       2       9       3       4       5       6       7       8       10

<2>

์•„๋ž˜ ์ฝ”๋“œ๋Š” 2๋ฒˆ์งธ ์ˆซ์ž๋ฅผ 8๋ฒˆ์งธ ์œ„์น˜๋กœ ๋ณด๋‚ด๊ณ  ์‹ถ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ์ž‘์„ฑํ•œ ๊ฒƒ์ด๋‹ค.

void ratate(array<int, 10>& arr, int wantPos, int target)
{
	int first = arr[t];
	for (int i = t; i < s; i++)
	{
		arr[i] = arr[i+1];
	}
	arr[s] = first;
}
int main() {
	array<int, 10> arr = {1,2,3,4,5,6,7,8,9,10};
	ratate(arr,8,2);
	for (int i = 0; i < arr.size(); i++)
	{
		cout << arr[i] << '\t';
	}
    return 0;
}

์ถœ๋ ฅ๊ฒฐ๊ณผ

1       2       4       5       6       7       8       9       3       10
728x90