Dönme mesafesi - Rotation distance

İçinde ayrık Matematik ve teorik bilgisayar bilimi, dönüş mesafesi ikisi arasında ikili ağaçlar aynı düğüm sayısı ile minimum sayı ağaç rotasyonları gerekli yeniden biçimlendirmek bir ağaca diğerine. İkili ağaçlar ve dışbükey çokgenlerin üçgenlemeleri arasındaki kombinatoryal eşdeğerlik nedeniyle, dönme mesafesi şuna eşittir: çevirme mesafesi için üçgenler nın-nin dışbükey çokgenler.

Dönme mesafesi ilk olarak Karel Čulík II tarafından tanımlandı ve Derick Wood 1982'de.[1] Her iki nDüğümlü ikili ağaçların en fazla dönüş mesafesi vardır 2n − 6ve bazı ağaç çiftleri tam olarak bu mesafeye sahiptir. hesaplama karmaşıklığı dönme mesafesinin hesaplanması bilinmiyor.[2]

Tanım

Ağaç rotasyonu

Bir ikili ağaç Biri kök düğüm olarak belirlenmiş, kalan her düğümün ya da sol çocuk veya doğru çocuk başka bir düğümün ebeveynve herhangi bir düğümden üst bağlantıların izlenmesinin sonunda kök düğüme yol açtığı durumlarda (Bazı kaynaklarda, burada açıklanan düğümler "dahili düğümler" olarak adlandırılır, "harici düğümler" olarak adlandırılan başka bir düğüm kümesi vardır, her bir dahili düğüm tam olarak iki çocuğa sahip olmak ve her bir harici düğümün sıfır çocuğa sahip olması gerekir.[1] Burada açıklanan sürüm, böyle bir ağaçtan tüm harici düğümler kaldırılarak elde edilebilir.)

Herhangi bir düğüm için x ağaçta bir alt ağaç aynı biçimde, köklü x ve ulaşabilen tüm düğümlerden oluşur x ana bağlantıları takip ederek. Her ikili ağacın düğümlerinin soldan sağa sıralaması vardır. sıralı geçiş, sol alt ağacın (eğer böyle bir çocuk varsa, kökün sol çocuğundaki alt ağaç) yinelemeli olarak geçilmesi, ardından kökün kendisinin listelenmesi ve ardından sağ alt ağacın yinelemeli olarak geçilmesi ile elde edilir. ikili arama ağacı her bir düğüm bir arama anahtarıyla ilişkilendirilir ve soldan sağa sıralamanın anahtarların sırası ile tutarlı olması gerekir.[2]

Bir ağaç rotasyonu soldan sağa sırasını değiştirmeden ikili ağacın yapısını değiştiren bir işlemdir. Birkaç kendini dengeleyen ikili arama ağacı veri yapıları bu rotasyonları, yeniden dengeleme algoritmalarında ilkel bir işlem olarak kullanır. Bir rotasyon iki düğümde çalışır x ve y, nerede x ebeveyni yve yaparak ağacı yeniden yapılandırır y ebeveyni ol x ve yerini almak x ağaçta. Alt bağlantılarından birini serbest bırakmak için y ve bağlantı için yer açın x çocuğu olarak ybu ameliyatın çocuklarından birini de hareket ettirmesi gerekebilir. y çocuğu olmak xBu işlemin iki çeşidi vardır, bir doğru dönüş içinde y sol çocuğu olarak başlar x ve x doğru çocuğu olarak biter yve bir sola dönüş içinde y doğru çocuğu olarak başlar x ve x sol çocuğu olarak biter y.[2]

Aynı soldan sağa düğüm dizisine sahip herhangi iki ağaç, bir dizi dönüş ile birbirine dönüştürülebilir. İki ağaç arasındaki dönüş mesafesi, bu dönüşümü gerçekleştiren mümkün olan en kısa dönüş sırasındaki dönüş sayısıdır. Aynı zamanda şu şekilde de tanımlanabilir: en kısa yol mesafesi içinde rotasyon grafiği, verilen soldan sağa düğüm dizisindeki her ikili ağaç için bir tepe noktasına ve iki ağaç arasındaki her dönüş için bir kenara sahip bir grafik.[2] Bu rotasyon grafiği, tam olarak bir nesnenin köşe ve kenarlarının grafiğidir. yüzlü.[3]

Mesafeyi çevirmek için eşdeğerlik

Üç düğümlü ve dört düğümlü ikili ağaçların dönüşlerine karşılık gelen bir beşgen ve bir altıgenin flip grafikleri

Bir aile verildiğinde üçgenler bazı geometrik nesnelerin çevirmek iki üçgen arasındaki bir kenarı kaldırarak ve karşıt köşegeni ortaya çıkan dörtgene ekleyerek bir üçgenlemeyi diğerine dönüştüren bir işlemdir. İki üçgenleme arasındaki çevirme mesafesi, bir üçgenlemeyi diğerine dönüştürmek için gereken minimum döndürme sayısıdır. Aynı zamanda bir bölgedeki en kısa yol mesafesi olarak da tanımlanabilir. çevirme grafiği, her nirengi için bir tepe noktası ve iki üçgenleme arasında her geçiş için bir kenarı olan bir grafik. Döndürme ve çevirme mesafeleri, birkaç farklı üçgenleme türü için bu şekilde tanımlanabilir, örneğin Öklid düzlemi, nirengi çokgenler ve soyutun üçgenlemeleri manifoldlar.

Verilen bir nirengi arasında bire bir yazışma vardır. dışbükey Poligon, belirlenmiş bir kök kenarı ve ikili ağaçlarla ntaraflı çokgenler ile ikili ağaçlara n − 2 düğümler. Bu yazışmada, bir üçgenlemenin her üçgeni, ikili bir ağaçtaki bir düğüme karşılık gelir. Kök düğüm, kenarlarından biri olarak belirlenmiş kök kenarına sahip olan üçgendir ve ilgili üçgenler üçgenlemede bir köşegeni paylaştığında iki düğüm ağaçta ana ve alt öğe olarak birbirine bağlanır. Bu yazışma altında, ikili ağaçlardaki dönüşler tam olarak karşılık gelir. karşılık gelen üçgenlemelerde ters çevirmek için. Bu nedenle, dönüş mesafesi (n − 2)-düğüm ağaçları, üçgenlemelerde mesafeyi çevirmeye tam olarak karşılık gelir ntaraflı dışbükey çokgenler.

Maksimum değer

Čulík ve Wood (1982) Bir ikili ağacın "sağ omurgasını", kökten başlayıp sağ alt bağları takip ederek sağ çocuğu olmayan bir düğüme ulaşana kadar elde edilen yol olarak tanımlar. Bir ağaç, tüm düğümlerin doğru omurgaya ait olmama özelliğine sahipse, her zaman sağ omurganın uzunluğunu artıran doğru bir dönüş vardır. Çünkü bu durumda, en az bir düğüm vardır x sol çocuğu olan sağ omurgada y bu sağ omurgada değil. Doğru rotasyon gerçekleştirme x ve y ekler y ondan başka herhangi bir düğüm çıkarmadan sağ omurgaya. Sağ omurganın uzunluğunu tekrar tekrar artırarak n-node ağacı, en fazla tüm düğümlerin doğru omurgaya ait olduğu aynı düğüm sırasına sahip benzersiz ağaca dönüştürülebilir. n − 1 adımlar. Aynı düğüm sırasına sahip herhangi iki ağaç verildiğinde, biri ilk ağacı tüm düğümleri sağ omurgada olan bir ağaca dönüştürerek ve ardından toplamda en fazla ikinci ağacın aynı dönüşümünü tersine çevirerek birini diğerine dönüştürebilir. 2n − 2 adımlar. Bu nedenle Čulík ve Wood (1982) kanıtlanmış, herhangi iki ağaç arasındaki dönüş mesafesi en fazla 2n − 2.[1]

Problemi ağaçların dönüşleri yerine dışbükey çokgenlerin dönüşleri açısından ele alarak, Sleator, Tarjan ve Thurston (1988) dönme mesafesinin en fazla olduğunu gösterebildiler 2n − 6. Dışbükey çokgenlerin üçgenlemeleri açısından, sağ omurga, kök kenarın sağ uç noktasına gelen üçgen dizisidir ve tüm köşelerin omurga üzerinde uzandığı ağaç bir fan üçgenlemesi bu köşe için. İyileştirmelerinin ana fikri, verilen her iki üçgenlemeyi, yalnızca kök kenarın sağ uç noktası yerine herhangi bir tepe için bir fan üçgenlemesine çevirmeyi denemektir. Tüm bu seçeneklerin aynı anda en kötü durum mesafesini vermesi mümkün değildir. n − 1 her bir başlangıç ​​nirengi noktasından gelişme sağlar.[2]

Sleator, Tarjan ve Thurston (1988) ayrıca sonsuz sayıda değer için geometrik bir argüman kullandı. nmaksimum dönüş mesafesi tam olarak 2n − 6. Sorunun yorumunu yine dışbükey çokgenlerin üçgenlemelerinin dönüşleri açısından kullanırlar ve başlangıç ​​ve bitiş üçgenlemesini bir nesnenin üst ve alt yüzleri olarak yorumlarlar. dışbükey çokyüzlü dışbükey çokgenin kendisi bir Hamilton devresi bu çokyüzlü içinde. Bu yoruma göre, bir üçgenlemeden diğerine bir dizi çevirme, bir koleksiyona çevrilebilir. dörtyüzlü verilen üç boyutlu polihedronu üçgenleştiren. (Üç boyutlu olarak) özelliği olan bir çokyüzlü ailesi bulurlar. hiperbolik geometri ) Çokyüzlülerin hacmi büyüktür, ancak içlerindeki tüm dörtyüzlülerin hacmi çok daha küçüktür, bu da herhangi bir üçgenlemede birçok dörtyüzlüye ihtiyaç duyulduğunu gösterir. Bu çokyüzlülerin üst ve alt yüz setlerinin tekrar ağaçlara çevrilmesiyle elde edilen ikili ağaçlar en azından yüksek dönme mesafesine sahiptir. 2n − 6.[2]

Daha sonra Pournin (2014) herkes için bir kanıt sağladı n ≥ 11maksimum dönüş mesafesi tam olarak 2n − 6. Pournin'in kanıtı kombinatoryaldir ve hiperbolik geometri kullanımından kaçınır.[3]

Hesaplama karmaşıklığı

Soru, Web Fundamentals.svgMatematikte çözülmemiş problem:
İki ağaç arasındaki dönüş mesafesini hesaplamanın karmaşıklığı nedir?
(matematikte daha fazla çözülmemiş problem)

Dönüş mesafesini tanımlamanın yanı sıra, Čulík ve Wood (1982) için sordu hesaplama karmaşıklığı verilen iki ağaç arasındaki dönüş mesafesinin hesaplanması. Herhangi iki ağaç arasında kısa rotasyon dizilerinin varlığı, rotasyon mesafesinin en fazla olup olmadığının test edilmesine işaret eder. k ait karmaşıklık sınıfı NP, ama olduğu bilinmiyor NP tamamlandı ne de çözülebilir olduğu bilinmemektedir polinom zamanı.

Herhangi iki ağaç arasındaki dönüş mesafesi, eşdeğer poligon üçgenlemelerinin görünümünde, bir üçgenlemeden çıkarılması ve diğer üçgenlemeyi oluşturmak için diğer köşegenlerle değiştirilmesi gereken köşegenlerin sayısı ile daha düşük sınırlandırılabilir. Ayrıca, problemi, her iki üçgenleme arasında paylaşılan herhangi bir köşegen boyunca alt problemlere bölerek ve ardından yöntemini uygulayarak, bu sayının iki katı ile üst sınırlandırılabilir. Čulík ve Wood (1982) her alt probleme. Bu yöntem, yaklaşım algoritması bir sorun için yaklaşım oranı iki.[4] Paylaşılan köşegenlerde benzer bir alt problemlere bölme yaklaşımı, bir sabit parametreli izlenebilir tam dönüş mesafesini hesaplamak için algoritma.[5][6]

Dönüş mesafesini tam olarak parametreleştirmeden hesaplamanın karmaşıklığını belirlemek çözümsüz kalır ve şu anda sorun için bilinen en iyi algoritmalar çalışır. üstel zaman.[7]

Referanslar

  1. ^ a b c Čulík, Karel, II; Ahşap, Derick (1982), "Bazı ağaç benzerlik ölçüleri üzerine bir not", Bilgi İşlem Mektupları, 15 (1): 39–42, doi:10.1016/0020-0190(82)90083-7, BAY  0678031
  2. ^ a b c d e f Sleator, Daniel D.; Tarjan, Robert E.; Thurston, William P. (1988), "Dönme mesafesi, üçgenlemeler ve hiperbolik geometri", Amerikan Matematik Derneği Dergisi, 1 (3): 647–681, doi:10.1090 / S0894-0347-1988-0928904-4, JSTOR  1990951, BAY  0928904
  3. ^ a b Pournin, Lionel (2014), "Associahedra'nın çapı", Matematikteki Gelişmeler, 259: 13–42, doi:10.1016 / j.aim.2014.02.035, BAY  3197650
  4. ^ Cleary, Sean; Aziz John, Katherine (2010), "Dönme mesafesi için doğrusal zaman yaklaşımı", Journal of Graph Algorithms and Applications, 14 (2): 385–390, doi:10.7155 / jgaa.00212, BAY  2740180
  5. ^ Cleary, Sean; Aziz John, Katherine (2009), "Dönme mesafesi sabit parametrelerle izlenebilir", Bilgi İşlem Mektupları, 109 (16): 918–922, arXiv:0903.0197, doi:10.1016 / j.ipl.2009.04.023, BAY  2541971
  6. ^ Lucas, Joan M. (2010), "İkili ağaçlarda dönme mesafesi için iyileştirilmiş çekirdek boyutu", Bilgi İşlem Mektupları, 110 (12–13): 481–484, doi:10.1016 / j.ipl.2010.04.022, BAY  2667389
  7. ^ Kanj, İyad; Sedgwick, Eric; Xia, Ge (2017), "Üçgenler arasındaki çevirme mesafesinin hesaplanması", Ayrık ve Hesaplamalı Geometri, 58 (2): 313–344, arXiv:1407.1525, doi:10.1007 / s00454-017-9867-x, BAY  3679938