Esasanam sanawyňyzda başlangyç san maglumatlarynyň görnüşleri däl-de, obýektleriň örtükleri (,,,,) bar
Soňra interfeýsiň ýerine ýetirilişini kesgitleýäris
List
bolsa , tertiplemek Byte
kyn Integer
bolup biler. Simpleönekeý meseleleri çözmek ýa-da söhbetdeşiň soragyna jogap bermek üçin örän peýdaly usuly ulanmagy maslahat berýärin. Ilki bilen, özümiziň doldurjak zadymyzy saýlalyň . Bu mysalda ýönekeý maglumat gurluşyndan grafiki gyralaryň () sanawyny ulanaryn : Short
Long
Double
Float
List
Edges
Graph
// Очень простой класс Edge (рёбро графа)
public class Edge {
public Vertex src;
public Vertex dst;
public double cost;
// создание ребра между двух вершин
Edge(Vertex s, Vertex d, double c) {
src = s;
dst = d;
cost = c;
}
}
// Список рёбер
Edge[] edges = graph.getEdges();
Graf näme? Aýry-aýry matematikada grafika jübüt toplum ( Matematiki abstraksiýalara öwrenişmedikler üçin beýle kesgitleme gaty düşnükli bolmaz, geliň has ýönekeý aýdalyň: Graf, olary birleşdirýän depeleriň we gyralaryň ýygyndysydyr. Abstraksiýa giňişliginden derrew material älemine çykarjak grafigiň gowy mysaly demir ýollaryň kartasydyr. Şeýle grafigiň uçlary stansiýalardyr . Garaz, olaryň arasyndaky ýollar gyralardyr . |
java.util.Comparator
:
class SortByCost implements Comparator<Edge> {
public int compare(Edge a, Edge b) {
if ( a.cost < b.cost ) return -1;
else if ( a.cost == b.cost ) return 0;
else return 1;
}
}
Bu mysalda, grafanyň gyralaryny agramy boýunça ýa-da src (çeşme) sözbaşysyndan dst (nokat) nokadyna çenli aralyk boýunça tertipläris . Ahyrynda, adaty usuly ulanýarys java.util.Arrays.sort ()
:
Arrays.sort(edges, new SortByCost())
Indi obýektler bilen doldurylan sahypamyz Edges
ýokarlanýan tertipde (kiçiden ulusyna) tertiplenýär. Çözüwiň awtory Ethan Arrowood.
GO TO FULL VERSION