2 / 2 / 5
Регистрация: 31.03.2014
Сообщений: 102
1

Массив разных элементов другого массива

08.09.2014, 13:56. Показов 5898. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В последнее время чувствую себя идиотом... Трудно идет обучение. Простите, это не по теме....

Так вот, условие задачи следующее: дан одномерный массив элементов среди которых есть повторяющиеся. Создать другой одномерный массив из разных элементов первого массива. Задачу понял по своему. Поскольку, мне нечем маркировать одинаковые числа, вместо них во втором массиве записал нули. Получились числа, перемежающиеся нулями. В принципе, остается только убрать нули, но на это мне уже терпения не хватило. Может, кто подскажет, как сдвинуть значения массива в начало?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/* package whatever; // don't place package name! */
 
import java.util.*;
import java.lang.*;
import java.io.*;
 
/* Name of the class has to be "Main" only if the class is public. */
class Bred
{
    public static void main (String[] args) throws java.lang.Exception
    {
        int num = 0;
        int k = 0;
        
        int [] mas = {122, 4, 5, 122, 1, 9, 5, 9};
        int [] mas1 = {0, 0, 0, 0, 0, 0, 0, 0};
        
        //Исходный массив
        for (int i = 0; i < mas.length; i++) {
            System.out.print(mas[i]+"  ");
        }
        
        for (int i = 0; i < mas.length; i++) {
            for (k = 0; k < mas.length; k++) {
                if (mas[i] == mas [k]) {
                    num++;
                }
                
                }
                if (num == 1) {
                    mas1[i] = mas[i];
                }
                num = 0;
                }
                
                
                
                System.out.println();
                for (int i = 0; i < mas1.length; i++) {
        System.out.print (mas1[i] +" ");
                }
            
    }
}
Успешно time: 0.07 memory: 380224 signal:0
122 4 5 122 1 9 5 9
0 4 0 0 1 0 0 0
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.09.2014, 13:56
Ответы с готовыми решениями:

Массив из чётных элементов другого массива
Необходимо было создать массив из случайных чисел. Размер массива задаётся пользователем с...

Массив: Создать массив из 140 элементов, выводящий 3 разных массива по 30 элементов...
Создать массив из 140 элементов (значения от 1.000 до 3.000 включительно), выводящий 3 разных...

Сформировать массив из положительных элементов одного массива и отрицательных элементов другого
Даны массив А и массив В, в каждом по 10 элементов. Сформировать новый массив, состоящий из...

Сформировать массив из положительных элементов одного массива и отрицательных элементов другого
Даны массив А и массив В, в каждом по 10 элементов. Сформировать новый массив, состоящий из...

2
27 / 27 / 24
Регистрация: 23.04.2011
Сообщений: 64
08.09.2014, 15:09 2
Написал свое решение, нули просто "замаскировал" ))

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public static void main(String[] args) {
        int[] array = {122, 4, 5, 122, 1, 9, 5, 9};     // Объявление основного массива
        int[] arrayNew = new int[array.length];         // Объявление массива разных чисел
        int counterForArrayNew = 0;                     // Счетчик для массива разных чисел
        boolean checkTheSame = false;
 
        System.out.println("Исходный массив");
        for (int i = 0; i < arrayNew.length; i++) {
            System.out.print(array[i] + ", ");
        }
        for (int i = 0; i < array.length; i++) {        // Начинаем поиск разных элементов основного массива
            for (int j = 0; j < array.length; j++) {
                if(array[i] == array[j] & i != j) {
                    checkTheSame = true;
                }
            }
            if(!checkTheSame) {
                arrayNew[counterForArrayNew++] = array[i]; // Сохраняем найденный элемент в новый массив
            }
            checkTheSame = false;
 
        }
        System.out.println();
        System.out.println("Новый массив:");
        for (int i = 0; i < arrayNew.length & arrayNew[i] != 0; i++) {
            System.out.print(arrayNew[i] + ", ");
        }
 
    }
1
2 / 2 / 5
Регистрация: 31.03.2014
Сообщений: 102
08.09.2014, 15:40  [ТС] 3
Java
1
2
3
if(array[i] == array[j] & i != j)
 
for (int i = 0; i < arrayNew.length & arrayNew[i] != 0; i++)
Вот это круто! Жаль, что я раньше так не писал. Спасибо.
0
08.09.2014, 15:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.09.2014, 15:40
Помогаю со студенческими работами здесь

Запись в массив элементов другого массива
Не могу понять, есть массивы array и arr (n - задано пользователем, count_ch - определяется...

Массив из неповторяющихся элементов другого массива
Помогите решить задачу. Начать начал, а вот дольше немного не пойму как. Ввести одномерный...

Массив из m последних элементов другого массива
Здравствуйте. Подскажите как реализовать следующую задачу: сгенерировать массив размерностью n,...

Создать массив из повторяющихся элементов другого массива
создать массив из повторяющихся элементов другого массива.что неправильно в коде? int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru