C♯ で文字列の
i 文字目と j 文字目を入れ替える処理を書くのに
時間をかけたくないため
メソッドにして公開します。
i 文字目と j 文字目を入れ替えるコード
public class ShiftStringer {
public static string ShiftString(string targetString, int i, int j)
{
System.Text.StringBuilder resultString = new(targetString);
char oneTime = resultString[i];
resultString[i] = resultString[j];
resultString[j] = oneTime;
return resultString.ToString();
}
}
効率的に入れ替えるために
StringBuilder を使用しています。
resultString を string にすると
resultString[i] に char を代入できません。
簡単な処理ですが
地味に実装に時間がかかったため
皆さんにこの処理を実装するための
無駄な時間を取って欲しくないため
今回公開する事にしました。
短いですがこの記事はここまで。
この記事が皆さんがこの処理を実装するための
無駄な時間を削る事ができたならば嬉しいです。
閲覧ありがとうございます。
追記
コメント欄にて
メモリ効率を考慮したバージョンを
提案頂きました。
そちらの方が
高速で動作するハズなので
是非コメント欄もご確認頂けると
幸いです。