Bu zorluğun karmaşık sayıların işlenmesi veya anlaşılmasını gerektirmediğini unutmayın.
Her öğenin iki elemanlı (Re, Im) bir tamsayı listesi olduğu boş olmayan bir kare matris verildiğinde, bunun bir Hermitian matrisini temsil edip etmediğini belirleyin (herhangi bir doğruluk / falsy değeri veya herhangi iki tutarlı değer vererek).
Girişin bir tamsayı 3D dizisi olduğuna dikkat edin; 2B karmaşık sayı dizisi değil. Diliniz doğrudan bir 3D dizisini alamıyorsa, düz bir liste (ve yardımcı olursa n × n veya n × n × 2 şekli) alabilirsiniz.
Bir matristir Hermitsel kendi eşitse eşlenik devrik . Diğer bir deyişle, onu sol-sol-sağ-sağ diyagonal boyunca çevirir ve tüm iki elemanlı yaprak listelerinin ikinci öğesini reddederseniz, giriş matrisi ile aynıdır. Çevirme ve reddetme sırasının alakasız olduğuna dikkat edin, bu yüzden önce reddedebilir ve daha sonra çevirebilirsiniz.
Yürüme örneği örneği
Bu örnek, okumayı kolaylaştırmak için gereksiz boşluk içeren JSON kullanır:
[[ [2, 0] , [2, 1] , [4, 0] ],
[ [2,-1] , [3, 0] , [0, 1] ],
[ [4, 0] , [0,-1] , [1, 0] ]]
Sırasını değiştir (KB-GD çapraz)
[[ [2, 0] , [2,-1] , [4, 0] ],
[ [2, 1] , [3, 0] , [0,-1] ],
[ [4, 0] , [0, 1] , [1, 0] ]]
Yaprak listelerinin ikinci öğelerini ayırın:
[[ [2, 0] , [2, 1] , [4, 0] ],
[ [2,-1] , [3, 0] , [0, 1] ],
[ [4, 0] , [0,-1] , [1, 0] ]]
Bu, girişle aynı olduğundan, matris Hermitian'dır.
Test senaryoları
Hermitik
[[[2,0],[2,1],[4,0]],[[2,-1],[3,0],[0,1]],[[4,0],[0,-1],[1,0]]]
[[[1,0],[2,0]],[[2,0],[1,0]]]
[[[1,0],[2,-3]],[[2,3],[1,0]]]
[[[42,0]]]
Sigara Hermisyen
[[[2,0],[2,1],[4,0]],[[2,-1],[3,0],[0,1]],[[4,0],[0,-1],[1,-1]]]
[[[0,1],[0,2]],[[0,2],[0,1]]]
[[[1,0],[2,3]],[[2,3],[1,0]]]
[[[3,2]]]