0 μέλη και 1 επισκέπτης διαβάζουν αυτό το θέμα.
re thymiara pragmatika eisai theos!!!!!ti algorithmara einai ayti pou petakses?"sum=n;sum=sum*(n-1);sum=sum/2;"to sum:=n*(n-1)/2 se xalage na to grapseis monokomato?!?!Pes oti kaneis plaka giati thaxoume mazikes aytoktonies sto forum. Toulaxiston ksexname to agxos ton apotelesmaton. Pes mou pantos apo periergeia apo poio tmima pires to ptyxio sou? (gm to Elliniko Kratos gm)
Συγγνώμη που παρεμβαίνω αλλά νομίζω ότι κάνετε όλοι λάθος. Αν τρέξετε το παρακάτω τμήμα κώδικα θα καταλάβετε ποια είναι η πολυπλοκότητα.. το λέει καθαρά int main(){ printf ("%s \n", "O(n^3)"); return 0;}
Εγώ και πάλι το γ διαλέγω
Παράθεση από: thymiaras στις Φεβρουαρίου 10, 2009, 05:51:36 pmΕγώ και πάλι το γ διαλέγω Ακόμα και μετά το link που παρέθεσα διαλέγεις το γ;
το f(n) = O(g(n)) σημαίνει ότι υπάρχουν θετικοί αριθμοί c και k, τέτοια ώστε 0 ≤ f(n) ≤ c*g(n) για κάθεl n ≥ k. Με άλλα λόγια αυτό σημαίνει ότι η συνάρτηση g() από την τιμή k και μετά αρχίζει και αυξάνεται με γρηγορότερο (ή ίδιο) ρυθμό από την συνάρτηση f(). ΔΕΝ ΛΕΕΙ ΠΟΥΘΕΝΑ ΓΙΑ ΑΛΓΟΡΙΘΜΟΥΣ. ΞΕΧΝΑ ΤΟΥΣ. ΜΟΝΟ ΣΥΝΑΡΤΗΣΕΙΣ.Τώρα, αυτοί σου λένε ότι το Σ_{1}^{n} k είναι ΣΥΝΑΡΤΗΣΗ του n, άρα f(n)=Σ_{1}^{n} k=n*(n-1)/2. Ποια συνάρτηση τώρα πάει τουλάχιστον τόσο γρήγορα όσο η f??? H g(n)=n^2. Πουθενα δεν υπάρχει αλγόριθμος. Σκέτα Μαθηματικά. Γι' αυτό μπερδεύεσαι. ...Και είναι λίγο εκνευριστικό που δεν το ξέρεις γιατί θα'πρεπε να το έχεις κάνει από το 1ο -2ο έτος.
Για το επίμαχο θέμα βρήκα αυτό. Σελίδα 3, παράδειγμα 4. Είναι η λύση που θέλουμε.http://www.cs.utsa.edu/~bylander/cs3233/big-oh.pdf
Τονίζω και πάλι ότι από μαθηματικής πλευράς οι συλλογισμοί που παρατίθενται στο τρέχον νήμα είναι σωστοί. Από πληροφορικής όμως το Big-O εκφράζει time/space complexity. Η πρώτη εκδοχή είναι εκτός ύλης, ενώ η δεύτερη εντός. Ακρίβεια διατύπωσης; Εξεταστέα ύλη; Ψιλά γράμματα για το ΑΣΕΠ θα μου πείτε και θα έχετε δίκιο...είδαμε τι έγινε με την επίσημη ανακοίνωση αποτελεσμάτων για βιολόγους/φυσικούς/χημικούς.