Advertisement
porteno

Q2_sol

Dec 20th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. import Adt.Queue;
  2.  
  3. public class Q2 {
  4.  
  5. public static void main(String[] args) {
  6. Queue<Integer> q1 = new Queue<Integer>();
  7. q1.insert(-2);
  8. q1.insert(6);
  9. q1.insert(0);
  10. q1.insert(-1);
  11. q1.insert(9);
  12. q1.insert(-3);
  13. q1.insert(7);
  14.  
  15. System.out.println("before:");
  16. printQueue(q1);
  17. System.out.println("after:");
  18.  
  19. printQueue(minusBeforePlus(q1));
  20. }
  21. /*
  22. *
  23. */
  24. public static Queue<Integer> minusBeforePlus(Queue<Integer> q) {
  25. Queue<Integer> ngtv_q = new Queue<Integer>();
  26. Queue<Integer> pls_q = new Queue<Integer>();
  27.  
  28. while(!q.isEmpty()) {
  29. int val = q.remove();
  30. if(val<0)
  31. ngtv_q.insert(val);
  32. else
  33. pls_q.insert(val);
  34. }
  35. while(!ngtv_q.isEmpty()) {
  36. q.insert(ngtv_q.remove());
  37. }
  38. while(!pls_q.isEmpty()) {
  39. q.insert(pls_q.remove());
  40. }
  41. return q;
  42.  
  43. }
  44. /*
  45. * input - queue of integers
  46. * output - print queue
  47. */
  48. public static void printQueue(Queue<Integer> q) {
  49. Queue<Integer> tmp = new Queue<Integer>();
  50. System.out.print(" ");
  51. while(!q.isEmpty()) {
  52. System.out.print(q.head()+"|");
  53. tmp.insert(q.remove());
  54. }
  55. while(!tmp.isEmpty()) {
  56.  
  57. q.insert(tmp.remove());
  58. }
  59. System.out.println("null");
  60.  
  61. }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement