小编tin*_*ker的帖子

在Java中的Mergesort

我是Java的新手,并尝试在Java中实现mergesort.但是,即使在多次运行程序之后,而不是所需的排序输出,我得到的输入作为输入的同一用户.如果有人能帮助我理解这种意想不到的行为,我将感激不尽.

import java.io.*;
import java.util.Arrays;


public class MergeSort {

    public static void main(String[] args) throws IOException{
        BufferedReader R = new BufferedReader(new InputStreamReader(System.in));
        int arraySize = Integer.parseInt(R.readLine());
        int[] inputArray = new int[arraySize];
        for (int i = 0; i < arraySize; i++) {
            inputArray[i] = Integer.parseInt(R.readLine());
        }
        mergeSort(inputArray);

        for (int j = 0; j < inputArray.length; j++) {
            System.out.println(inputArray[j]);
        }

    }

    static void mergeSort(int[] A) {
        if (A.length > 1) {
            int q = A.length/2;
            int[] leftArray = Arrays.copyOfRange(A, 0, q);
            int[] …
Run Code Online (Sandbox Code Playgroud)

java sorting algorithm mergesort

11
推荐指数
2
解决办法
9万
查看次数

复制字符串时出现分段错误

我正在尝试执行下面的代码,但是对于每次尝试我都会出现分段错误.这个问题似乎来自于令牌化中使用的strncpy函数.我对编程有点新意.请帮我调试代码.请帮忙:

        /* 
       ** Program to accept a binary IP address from the command line and 
     ** if it is a valid IP address, show the user its dotted decimal form.
    ** Also tell the user, which class of IP address it belongs to
    */
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>

    #define TRUE 1
    #define FALSE 0

    int validchk(char uarg[]);
    int tokenize(char uarg[], char* uargv[]);
    int toNum(char harr[], char iparr[]);
    void shownum(char *iparr[]);
    void classify(char uarg[]);
    void usage();
    void mystrncpy(char* arr, …
Run Code Online (Sandbox Code Playgroud)

c unix

4
推荐指数
1
解决办法
154
查看次数

标签 统计

algorithm ×1

c ×1

java ×1

mergesort ×1

sorting ×1

unix ×1