Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.util.*;
- public class Laba4 {
- private static final String url="jdbc:mysql://localhost:3306/tese";//для создания подключения с базой данных
- private static final String user="root";
- private static final String password="27021998";
- private static Connection con;
- private static Statement stmt;
- private static ResultSet rs;
- static ArrayList<Integer> a1=new ArrayList<>();
- static ArrayList<Integer> a2=new ArrayList<>();
- static ArrayList<Integer> res=new ArrayList<>();
- static String z_1="SELECT * FROM luc";
- static String z_2="SELECT * FROM luc1";
- public static void radixSort(List<Integer> array) {
- //максимальное число байтов в числе
- int k = Integer.SIZE / 8;
- //число элементов в массиве
- int n = array.size();
- //двигаемся по байтам в числах
- for (int i = 0; i < k; i++) {
- //создаем массив с заполненый нулями, который
- //будет содержать количество элементов
- //содрежащих i-ый байт в k-ой позиции
- int[] c = new int[256];
- for (int j = 0; j < n; j++) {
- c[dig256(array.get(j), i)]++;
- }
- //модифицируем массив с
- for (int j = 1; j < 256; j++) {
- c[j] += c[j - 1];
- }
- //массив b будет представлять отсоритровонную до
- //k-ого байта копию массива array
- Integer[] b = new Integer[n];
- for (int j = n - 1; j >= 0; j--) {
- b[--c[dig256(array.get(j), i)]] = array.get(j);
- }
- //заменяем массив аrray на b
- array.clear();
- array.addAll(Arrays.asList(b));
- }
- }
- //эта функция возвращает p-ый байт числа n
- public static int dig256(int n, int p) {
- return (n >> (8 * p)) & 255;
- }
- public static void main(String[] args){
- try{
- con=DriverManager.getConnection(url,user,password);
- stmt=con.createStatement();
- rs=stmt.executeQuery(z_1);
- while(rs.next()){
- a1.add(rs.getInt(2));
- }
- rs=stmt.executeQuery(z_2);
- while(rs.next()){
- a2.add(rs.getInt(1));
- }
- System.out.println("Первый массив:\n"+a1);
- System.out.println("Второй массив:\n"+a2);
- res.addAll(a1);
- res.addAll(a2);
- radixSort(res);
- System.out.println("Результат:\n"+res);
- }catch(SQLException sqlEx){
- sqlEx.printStackTrace();//закрываем подключение с базой данных
- }finally{
- try{con.close();}catch(SQLException se){
- try{stmt.close();}catch(SQLException sr){
- try{rs.close();}catch(SQLException st){
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement