プログラミングでアイデアを具現化したい

あらゆるものを具現化するためにプログラミングを始めました。主にC#

C# 配列の並び替え

ブログで説明するのに少しゴリゴリなコードになってしまいまいしたが・・

とある配列を自分の思い通りの並び順にし、

且つ足りない時もベースの並び順に従った順で並べ替えするコード

using System;

namespace SortTest {
    class Program {
        static void Main(string[] args) {
            //ベースの並び順
            string[] strs1 = { "文字1", "文字2", "文字3", "文字4", "文字5" };
            //バラバラ
            string[] strs2 = { "文字5", "文字4", "文字3", "文字1", "文字2" };
            //数も足りないし、順もバラバラ
            string[] strs3 = { "文字4", "文字2", "文字3" };
            //一時格納用
            string[] temp1 = new string[strs2.Length];
            string[] temp2 = new string[strs3.Length];

            int n = 0;
            foreach (string str in strs2){
                temp1[n] = strs2[n];
                n++;
            }
            n = 0;
            foreach (string str in strs3) {
                temp2[n] = strs3[n];
                n++;
            }

            int j = 0;
            foreach (string str in strs1) {
                for (int i = 0; i < strs2.Length; i++) {
                    if (temp1[i] == str) {
                        strs2[j] = str;
                        j++;
                    }
                }
            }

            j = 0;
            foreach (string str in strs1) {
                for (int i = 0; i < strs3.Length; i++) {
                    if (temp2[i] == str) {
                        strs3[j] = str;
                        j++;
                    }

                }
            }

            Console.WriteLine("ベースの並び順");
            foreach (string str in strs1) {
                Console.WriteLine(str);
            }
            Console.WriteLine("バラバラ→並び替え");
            foreach (string str in strs2) {
                Console.WriteLine(str);
            }
            Console.WriteLine("数も足りないし、順もバラバラ→並び替え");
            foreach (string str in strs3) {
                Console.WriteLine(str);
            }
        }
    }
}

実行結果
f:id:tos5511:20160406003023p:plain

それはそうと、実はビジネスマン(社畜)らしく
ある資格を取ることになってしまいました。
別に資格に頼る気も、資格を取ったからと言って年収が上がるわけでもなく
頑張るメリットはあまり見出せないのですが・・

まあここは私のちっぽけなプライドの為にほんの少し、
プライペートを切り売りし、合格してやろうかと思っております。