İpucu

İki Sayı Aralığının Kesişip Kesişmediği

Elinizde iki sayı aralığı olsun. Örneğin 9-17 ve 21-38. Bu iki sayı aralığı kesişmiyordur. Ancak 9-17 sayı aralığıyla 15-25 sayı aralığı kesişmektedir. Çünkü 15,16,17 sayıları ortaktır.
İki sayı aralığını kesişip kesişmediğini anlamak için aşağıdaki gibi basit bir yöntem yazılabilir:
public boolean conflict(int start1, int end1, int start2, int end2) {
	int max= Math.max(start1, start2);
	int min= Math.min(end1, end2);
	return max<=min;
}

İlk olarak aralıkların başlangıçlarının en büyüğü alınır. Sonra bitişlerin en küçüğü alınır. Eğer büyüklerin en küçüğü, hala küçüklerin en büyüğünden büyükse demek ki keşişme yoktur. Örneğin 9-17 ve 21-38 ikilisini düşünürsek. 9, 21 için en büyüğü 21, 17, 38 için ise en küçüğü 17'dir. Görüldüğü gibi 21, 17'den küçük değildir ve kesişmezler. 9-17 ile 15-25 sayısını düşünürsek. 9 ile 15 sayılarından 15 büyüktür, 17 ve 25 sayılarından ise 17 küçüktür. 15<=17 olmasından dolayı kesişme vardır diyebiliyoruz.
zafer.teker , 07.03.2020

Bu Sayfayı Paylaş:

Fibiler Üyelerinin Yorumları


Tüm üyeler içeriklere yorum ekleyerek katkıda bulunabilir : Yorum Gir

Misafir Yorumları




Bu Sayfayı Paylaş:

İletişim Bilgileri

Takip Et

Her Hakkı Saklıdır. Bu sitede yayınlanan tüm bilgi ve fikirlerin kullanımından fibiler.com sorumlu değildir. Bu sitede üretilmiş , derlenmiş içerikleri, fibiler.com'u kaynak göstermek koşuluyla kendi sitenizde kullanılabilirsiniz. Ancak telif hakkı olan içeriklerin hakları sahiplerine aittir