Advertisement
Guest User

Untitled

a guest
Dec 28th, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.19 KB | None | 0 0
  1. import java.sql.Connection;
  2. import java.sql.DriverManager;
  3. import java.sql.ResultSet;
  4. import java.sql.SQLException;
  5. import java.sql.Statement;
  6. import java.util.*;
  7. public class Laba4 {
  8. private static final String url="jdbc:mysql://localhost:3306/tese";//для создания подключения с базой данных
  9. private static final String user="root";
  10. private static final String password="27021998";
  11.  
  12. private static Connection con;
  13. private static Statement stmt;
  14. private static ResultSet rs;
  15.  
  16. static ArrayList<Integer> a1=new ArrayList<>();
  17. static ArrayList<Integer> a2=new ArrayList<>();
  18. static ArrayList<Integer> res=new ArrayList<>();
  19.  
  20. static String z_1="SELECT * FROM luc";
  21. static String z_2="SELECT * FROM luc1";
  22.  
  23. public static void radixSort(List<Integer> array) {
  24. //максимальное число байтов в числе
  25. int k = Integer.SIZE / 8;
  26. //число элементов в массиве
  27. int n = array.size();
  28. //двигаемся по байтам в числах
  29. for (int i = 0; i < k; i++) {
  30. //создаем массив с заполненый нулями, который
  31. //будет содержать количество элементов
  32. //содрежащих i-ый байт в k-ой позиции
  33. int[] c = new int[256];
  34. for (int j = 0; j < n; j++) {
  35. c[dig256(array.get(j), i)]++;
  36. }
  37. //модифицируем массив с
  38. for (int j = 1; j < 256; j++) {
  39. c[j] += c[j - 1];
  40. }
  41. //массив b будет представлять отсоритровонную до
  42. //k-ого байта копию массива array
  43. Integer[] b = new Integer[n];
  44. for (int j = n - 1; j >= 0; j--) {
  45. b[--c[dig256(array.get(j), i)]] = array.get(j);
  46. }
  47. //заменяем массив аrray на b
  48. array.clear();
  49. array.addAll(Arrays.asList(b));
  50.  
  51. }
  52.  
  53.  
  54. }
  55.  
  56. //эта функция возвращает p-ый байт числа n
  57. public static int dig256(int n, int p) {
  58. return (n >> (8 * p)) & 255;
  59. }
  60.  
  61.  
  62. public static void main(String[] args){
  63.  
  64. try{
  65. con=DriverManager.getConnection(url,user,password);
  66.  
  67. stmt=con.createStatement();
  68.  
  69. rs=stmt.executeQuery(z_1);
  70. while(rs.next()){
  71. a1.add(rs.getInt(2));
  72. }
  73. rs=stmt.executeQuery(z_2);
  74. while(rs.next()){
  75. a2.add(rs.getInt(1));
  76. }
  77. System.out.println("Первый массив:\n"+a1);
  78. System.out.println("Второй массив:\n"+a2);
  79. res.addAll(a1);
  80. res.addAll(a2);
  81. radixSort(res);
  82. System.out.println("Результат:\n"+res);
  83.  
  84. }catch(SQLException sqlEx){
  85. sqlEx.printStackTrace();//закрываем подключение с базой данных
  86. }finally{
  87. try{con.close();}catch(SQLException se){
  88. try{stmt.close();}catch(SQLException sr){
  89. try{rs.close();}catch(SQLException st){
  90.  
  91. }
  92. }
  93. }
  94. }
  95.  
  96. }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement