Σελίδα 3 από 9

Δημοσιεύτηκε: Πέμ Οκτ 04, 2007 9:24 pm
από stavrakos
Παιδιά ανέβασα κάποια παλιά θέματα και κάτι λύσεις. Για τον σωρό έχω μια μικρή επιφύλαξη.

Δημοσιεύτηκε: Πέμ Οκτ 04, 2007 9:39 pm
από ntouzos
γιατι δεν  μπορω να τα βρω;σε ποια κατηγορια βρισκονται;

Δημοσιεύτηκε: Πέμ Οκτ 04, 2007 9:42 pm
από pao132003
μόλις τα προσέθεσα στο εργαλείο. (μη μου πείτε ότι άργησα!)

domes dedomenon

Δημοσιεύτηκε: Πέμ Οκτ 04, 2007 10:51 pm
από nef
thanks a lot gia ta limena :) oi selides pou anevases einai 4 synolika..mipos leipei kamia?gt stin teleytaia selida to teleytaio erotima kovetai..

Δημοσιεύτηκε: Παρ Οκτ 05, 2007 11:07 am
από ntouzos
παιδια βρηκε κανεις ακρη με το τελευταιο θεμα;οχι τπταλλο αλλα παντα μπαινει παρομοιο.οποιος ειχε αποψη ας την εκφρασει..   :roll:

Δημοσιεύτηκε: Παρ Οκτ 05, 2007 12:50 pm
από theos
Έχω μια ιδέα, αυτό που έγραψα δηλαδή.

Θέμα 5o

Κώδικας: Επιλογή όλων

int c;
entry=new PQentry;
PQ= new PriorityQueue;
char[] k[];
int[] a[];
char z;
int l=1;
boolean diakritostoixeio=true;
int m=1;
k[0]=getnext();
a[0]=1;
while (getNext()=!null)
{      z=getNext(); 
        for (0<i<=k.length)
        {     if (z=k[i])
              {      a[i]=a[i]+1;
                      l=l+1;
                      diakritostoixeio=false;
                      break; *bgainei eksw apo to for*
              }
        }
        if (diakritostoixeio==true) 
        {      k[a.length]=z;
                a[k.length-1]=1
        }
        m=m+1
}
 
for (0<i<a>c)
{        for (0<i<c)
         {     entry=PQ.findMax;
               System.out.println(entry.getkey()+entry.getdata)
               PQ.deleteMax
         }
}
else
{         for (0<i<a.length)
         {     entry=PQ.findMax;
               System.out.println(entry.getkey()+entry.getdata())
               PQ.deleteMax;
         }
}
[/hide]
Αυτό έκανα εγώ... Τώρα, μπορεί να υπάρχει και πολύ καλύτερος χρονικά αλγόριθμος. Το παραπάνω είναι ψευδογλώσσα. Να πω και περίπου τι κάνει γιατί αλλιώς φαίνεται βουνό

Με τη μέθοδο getNext παίρνουμε την επόμενη λέξη. Η ιδέα είναι να αποθηκεύουμε τις λέξεις σε ένα διάνυσμα k και τις φορές που εμφανίζονται σε ένα διάνυσμα a

Οπότε σε κάθε καινούργια λέξη που παίρνουμε ελέγχουμε αν υπάρχει ήδη στο διάνυσμα k και αν υπάρχει ας πούμε στη θέση 3 τότε αυξάνουμε το a[3] κατά 1.

Αν δεν υπάρχει (είναι η πρώτη φορά που εμφανίζεται) τότε την τοποθετούμε στο τέλος του διανύσματος k και στο τέλος του διανύσματος α προσθέτουμε την μονάδα.

Μόλις τελειώσουν οι λέξεις τοποθετούμε σε μια ουρά προτεραιότητας τα στοιχεία όπου σαν data έχουν την λέξη και σαν κλειδί έχουν τον αριθμό των φορών που υπάρχει η λέξη. Μετά εκτυπώνουμε αυτά που θέλει όπως φαίνεται στον κώδικα. Χοντρικά αυτό κάνω με αυτόν τον αλγόριθμο...


Edit: Έκρυψα τον αλγόριθμο για να μην τον διαβάζει κάποιος άδικα
-Wizard

Δημοσιεύτηκε: Πέμ Οκτ 18, 2007 2:27 pm
από theos
Άκυρος ο παραπάνω αλγόριθμος. Βαθμολογήθηκε με 0/2. Ο Συμβώνης ήθελε να λυθεί μόνο με πίνακα συμβόλων και παρόλο που είναι προγραμματιστικά σωστός τον έπιασε όλο λάθος. Πριν δώσουμε, αν καταφέρω να τον κάνω θα γράψω τον σωστό χρησιμοποιώντας πίνακα συμβόλων.

Χαιρετώ

Re: Δομές Δεδομένων

Δημοσιεύτηκε: Δευ Μάιος 12, 2008 11:08 am
από nikolakisxa
hi oloi....dwthike kai i prwti ergasia pros paradosi....mipws exei kaneis idees epilisis....?

Ασκήσεις στις Δομές Δεδομένων ΕΠΕΙΓΟΝ!!!

Δημοσιεύτηκε: Τρί Ιουν 17, 2008 4:36 pm
από pantazi
Ελπίζω να διαβαστεί εγκαίρως το μήνυμά μου. Υπάρχει κάποιος, ο οποίος να έχει κάνει τις ασκήσεις προς παράδοση του κ. Συμβώνη για τις Δομές Δεδομένων και να μπορεί να τις στείλει ή να τις ανεβάσει; Πρέπει να τις παραδώσουμε μέχρι την Παρασκευή. Αν έχει κάποιος την ευγενή καλωσύνη να βοηθήσει... Ευχαριστώ!

Re: Ασκήσεις στις Δομές Δεδομένων ΕΠΕΙΓΟΝ!!!

Δημοσιεύτηκε: Τρί Ιουν 17, 2008 4:38 pm
από brian
nai paidia opoios mporei as tis anevasei giati paizei na valei kai kanena thema apo aftes!SOS!!!!

Re: Δομές Δεδομένων

Δημοσιεύτηκε: Τετ Ιουν 18, 2008 3:56 pm
από kostas213
Δόθηκε παράταση για την 2η εργαστηριακή άσκηση. Τώρα μπορούμε να την παραδόσουμε μέχρι τη Δευτέρα (ρωτήσαμε σήμερα τον Συμβώνη). :D

Re: Δομές Δεδομένων

Δημοσιεύτηκε: Πέμ Ιουν 19, 2008 7:43 pm
από DrCox
re paidia mipws kserei kaneis na lynei to thema me tis parentheseis...?an mporeite as to lysei kaneis kai as to anebasei...oso gia tous swrous kai ta dendra...den einai tpt...apla to thema me tis parentheseis an kserei kapoios giati kaigomaste.... thanx...

Re: Δομές Δεδομένων

Δημοσιεύτηκε: Πέμ Ιουν 19, 2008 8:36 pm
από theos
Το θέμα με τις παρενθέσεις:

Χρησιμοποιείς μια στοίβα s. Κάθε φορά που διαβάζεις "(" κάνεις push Χ. Κάθε φορά που διαβάζεις ")" κάνεις pop. Αν η στοίβα είναι άδεια στο τέλος τότε η έκφραση που δόθηκε είναι σωστή. Αυτή είναι η ιδέα της λύσης. Σύμφωνα με αυτό δεν είναι δύσκολο να γράψετε τον αλγόριθμο.

Παράδειγμα: ((())()())
Βλέπει τρεις αριστερές και τις κάνει push. Οπότε η στοίβα έχει μέσα {Χ,Χ,Χ}
Βλέπει δύο δεξιές και κάνει δύο φορές pop. Οπότε η στοίβα έχει: {Χ}
Με την ίδια λογική λειτουργεί οπότε απλώς γράφω τι θα έχει η στοίβα σε κάθε βήμα
{Χ,Χ}
{Χ}
{Χ,Χ}
{Χ}
{ }
Η στοίβα είναι άδεια στο τέλος (IsEmpty==true) και άρα ήταν σωστή η έκφραση

Στον αλγόριθμο πρέπει να προστεθεί η περίπτωση που δεχόμαστε δεξιά παρένθεση και η στοίβα είναι άδεια. Σε αυτήν την περίπτωση επιστρέφει ως αποτέλεσμα ότι η έκφραση δεν είναι σωστή

Στο θέμα με τις παρενθέσεις και τις αγκύλες, κάνει push X σε "(" και push Υ σε "[". Και όταν δέχεται ")" κάνει pop. Αν το στοιχείο που έγινε pop ήταν Χ συνεχίζει κανονικά. Αν ήταν Υ τερματίζει λέγοντας ότι η έκφραση δεν είναι σωστή και αντίστοιχα αν δεν υπήρχε στοιχείο να γίνει pop (αν δηλαδή ήταν άδεια η στοίβα)

Καλό διάβασμα :P

Re: Δομές Δεδομένων

Δημοσιεύτηκε: Πέμ Ιουν 19, 2008 8:50 pm
από DrCox
eisai apla theos...(den einai tyxaio to nickname..) etoimasou to septembri kai gia algorithmous.....

Re: Δομές Δεδομένων

Δημοσιεύτηκε: Παρ Ιουν 20, 2008 10:43 pm
από DrCox
re theos gia to thema me tis parentheseis kai tis agkyles...otan synanta ')' kanei pop to X wraia...otan synanta '}' kanei pop to Y. den termatizei pou les..ase pou i prwti ekfrasi (())() einai lathos symfwna me ta legomena tou...gt mesa se ena zeugari agkylwn parenthesewn prepei na exoume swsti ekfrasi.an paroume tis parentheseis 1 kai 3 tha exoun mesa tous mono tin (...ara einai lathos i ekfrasi auti...i lathos ta lew egw..?gia tsekare to...kai an ginetai kaneis na eksigisei auto me ta 'insert' thema 4 epanaliptikis 2005.thanx..