Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public ArrayList<Integer> topN(Integer N) {
- // PRE: none
- // POST: returns N vertices with highest number of visits, in order;
- // returns all vertices if <N in the graph;
- // returns vertices ranked 1,..,N,N+1,..,N+k if these k have the
- // same number of visits as vertex N
- //create a linked list that goes through the list and finds highest value adds to list and marks it then goes though again etc etc
- // TODO
- ArrayList<Integer> tn = new ArrayList<Integer>(N);
- //TreeSet<Integer> ts = new TreeSet<Integer>(vertexSet());
- //Iterator<Integer> it = ts.iterator();
- Integer Vertex = null;
- int listLength = 0;
- while (listLength < N){
- Integer high = 0;
- for(int i = 0; i<=vertexSet().size(); i++){
- Vertex = i;
- if(isMarked(high) == true) //if 0 is highest value adds 1 to keep loop running
- high = high++;
- else{
- if(getVisits(Vertex) > getVisits(high) && isMarked(Vertex) != true){
- high = i;
- }
- }
- }
- tn.add(listLength, high);
- setMarked(high);
- listLength++;
- }
- return tn;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement