Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- public class Sliyanie {
- private ArrayList<Integer> sortedlist = new ArrayList<Integer>();
- public void solution (ArrayList<Integer> list){
- if (list.size() == 1){
- return;
- }
- int leftsize = list.size()/2;
- int rightsize = list.size()-leftsize;
- ArrayList left = new ArrayList();
- ArrayList right = new ArrayList();
- for (int i = 0; i < leftsize; i++){
- left.add(list.get(i));
- }
- for (int j = rightsize; j <= list.size(); j++){
- right.add(list.get(j-1));
- }
- solution(left);
- solution(right);
- merge(left, right);
- System.out.println(sortedlist);
- }
- private void merge(ArrayList<Integer> left, ArrayList<Integer> right){
- int l = 0;
- int r = 0;
- while (l < left.size() && r < right.size()){
- if (left.get(l)>right.get(r)){
- sortedlist.add(left.get(l));
- l++;
- }
- if (right.get(r)>left.get(l)){
- sortedlist.add(right.get(r));
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement