C Filtre Uygulamak
-
Herkese merhaba,
Şöyle bir programım var: Kullanıcıların daha önceden girilmiş "bildiği diller,iş deneyimleri, öğrenim durumları" gibi bilgileri mevcut. Ben programda mesela hiç iş deneyimi olmayan kişileri listelemem gerekiyor. Bu aşamada problem yok ancak çoklu halde nasıl yaparım
bir yöntem bulamadım. Mesela hem İngilizce bilen hem de deneyimsiz olan kişileri listeleyen veya o an ki uygulanılması istenilen birden fazla filtreye göre nasıl bir arama yapabilirim var mı bir fikriniz?
İlgilenen arkadaşlara teşekkürler... -
Hocam kullandığın veri yapilari v.b. hakkinda bilgi olmadan bu soruya nasil bir cevap vermemizi bekliyorsun? "If kullanarak yap" gibi mi?
Biraz daha somutlaştır ne soruyorsan derim.
-
Hocam sadece nasıl yapılabileceği hakkında bir fikir sahibi olmamın yeterli olacağını düşündüğüm için pek detaya girmedim. Hatta C bilmeye dahi gerek yok diyebiliriz.
Kullanıcıların bilgileri ağaç yapısında saklı, mesela isime göre yerleştirilmiş durumda. Her düğümde adres bilgisi okul bilgisi iş bilgisi gibi bilgiler saklı. Mesela iş deneyimi olmayan kullanıcılara bakarken her düğümü geziyor, iş kısmı boşsa geri döndürüyor. Ancak ikinci, üçüncü, dördüncü filtreyi uygulamayı kuramadım. Sorum çoklu filtrelemeyi nasıl yapabilirim bu aslında. -
bana mı basit geldi bilmiyorum ama and koy hocam.
if((is ==bos) && (dil == bos)){
bla bla;
}
-
rajooonn bunu yazdı
Hocam sadece nasıl yapılabileceği hakkında bir fikir sahibi olmamın yeterli olacağını düşündüğüm için pek detaya girmedim. Hatta C bilmeye dahi gerek yok diyebiliriz.
Kullanıcıların bilgileri ağaç yapısında saklı, mesela isime göre yerleştirilmiş durumda. Her düğümde adres bilgisi okul bilgisi iş bilgisi gibi bilgiler saklı. Mesela iş deneyimi olmayan kullanıcılara bakarken her düğümü geziyor, iş kısmı boşsa geri döndürüyor. Ancak ikinci, üçüncü, dördüncü filtreyi uygulamayı kuramadım. Sorum çoklu filtrelemeyi nasıl yapabilirim bu aslında.Geri döndürüyordan kastın nedir? O kısmı anlayamadım.
-
cift katmanli bir array olusturup null islemine tabi tutabilirsin.Bu array degerlerine ise pointer ile erisirsin eger ''null'' ise sunu, bunu yap denilebilir.
-
Raw datayı (nodeları) teker teker filtre fonksiyonlarından geçir. Filtre dediğin fonksiyonların hepsi AND ile bağlıysa problemin çok kolay aslında.
200 tane sayılardan oluşan node var elinde (raw data)
50den küçük olanlar fonksiyonu -> 50 adet raw data kaldı
10dan büyük olanlar fonksiyonu -> 40 adet raw data kaldı
25ten büyük olanlar fonksiyonu -> 25 adet raw data kaldı
Ağacı tekrar oluştur. Tadaaaa filtrelenmiş ağaç. Burda filtre koşullarının tamamı birbirine and ile bağlanarak oluştu. OR ile bağlamak istiyorsan treeyi duplike edip raw data haline getirdikten sonra fonksiyonları teker teker uygulamaya devam edip farklı sonuçlara ulaşabilirsin.
Edit: Tree structurenı kullanarak O(n) den daha hızlı çalışsın istiyorsan başka alternatif üretebiliriz.
S2kucuk tarafından 03/Oca/16 11:15 tarihinde düzenlenmiştir
