Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. package selectionSort;
  2. import java.util.*;
  3. public class Process {
  4.  
  5. public static void main(String[] args) {
  6. int [] nums= getNumbers();
  7. int [] sorted = sortNumbers(nums);
  8. searchNums(sorted);
  9.  
  10. }
  11.  
  12. public static int[] getNumbers() {
  13. Scanner kb = new Scanner(System.in);
  14. int [] nums = new int[10];
  15. int index =0;
  16. System.out.println("Please enter 10 numbers to be sorted");
  17. while(index<10) {
  18. System.out.print("(Number " + (index+1) + "/10:)");
  19. int num = kb.nextInt();
  20. nums[index]= num;
  21. boolean unique = isUnique(nums,num,index);
  22. if(unique) {
  23. index++;
  24. }
  25. else {
  26. System.out.println("That number has already been entered. Please enter a unique number");
  27. }
  28. }
  29. return nums;
  30. }
  31.  
  32. public static boolean isUnique(int[] nums, int num,int index) {
  33. boolean unique = true;
  34. for(int i=0;i<=index;i++) {
  35. for(int j=0;j<i;j++) {
  36. if(nums[i]==nums[j]) {
  37. unique = false;
  38. }
  39. }
  40. }
  41. return unique;
  42. }
  43.  
  44. public static int[] sortNumbers(int [] nums) {
  45. for(int i=0;i<nums.length;i++) {
  46. int index = i;
  47. for(int j=i+1;j<nums.length;j++) {
  48. if(nums[j]<nums[index]) {
  49. index =j;
  50. }
  51. }
  52. int small = nums[index];
  53. nums[index] = nums[i];
  54. nums[i]=small;
  55. }
  56. System.out.println("Here is your sorted list of inputs: ");
  57. System.out.print(nums[0]);
  58. for(int k=1;k<nums.length;k++) {
  59. System.out.print(" , " + nums[k]);
  60. }
  61. return nums;
  62. }
  63.  
  64. public static void searchNums(int [] nums) {
  65. Scanner kb = new Scanner(System.in);
  66. int low =0;
  67. int high= nums.length;
  68. System.out.print("\nPlease enter a number you would like to search for...");
  69. int flag = kb.nextInt();
  70. while(high>=low) {
  71. int middle = (low + high)/2;
  72. if(nums[middle]==flag) {
  73. System.out.println("Your number: " + flag + " was found at index position: " + middle);
  74. break;
  75. }
  76. if(flag>middle) {
  77. low = middle +1;
  78. }
  79. if(flag<middle) {
  80. high = middle -1;
  81. }
  82. }
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement