Я опубликовал электронную книгу. Подборка 100 Java(интервью)решенных проблем программирования. Я дал четкое объяснение и код в книге.

Поверьте мне, когда я говорю, что это будет стартовым для вас, чтобы получить работу в компании вашей мечты.

Нажмите на эту ссылку, чтобы перейти на целевую страницу. Это совершенно бесплатно при использовании kindle amazon. Взгляните на него.

Цель

Подсчитайте количество пар в LinkedList (где каждый узел имеет целое число), сумма которых равна заданной сумме (все элементы уникальны)

Ввод: 0-›2-›5-›7-›4-›6-›10-›20-›-10-›NULL Сумма: 10

Вывод: 3 [(0, 10), (4, 6), (20, -10)]

// вот определение SintNode

открытый класс SintNode {общественный int num; общедоступный SintNode nextNode; public SintNode(int num){ this.num = num; } }

Код:

Объяснение:

Задача состоит в том, чтобы найти пару чисел, которая равна заданному значению суммы.

Используя условия цикла, просмотрите значения списка, чтобы найти значения, равные сумме.

Продолжайте до конца списка.

Алгоритм:

  • Связанный список и значения целевой суммы передаются в качестве входных данных функции unction func(SintNode head, int sum).
  • Переменные временного списка temp и temp1 создаются для хранения заголовка связанного списка, а переменная с именем count объявляется и инициализируется значением 0 для подсчета числа. разрассчитанная сумма равна целевой сумме.
  • Переменным temp и temp1 назначается заголовок списка.
  • Используя условие цикла, когда e temp.nextNode не равно нулю, вычисляется значение суммы.
  • Если условие цикла while истинно, то temp1 присваивается значение temp.nextNode.
  • Используя внутренний цикл while с temp, не равным нулю, вычисляется сумма temp.num и temp1.num.
  • Если рассчитанная сумма равна целевой сумме, счетчик увеличивается.
  • Для перехода к следующему узлу списка temp1 назначается temp1.nextNode.
  • Как только внутренний цикл while заканчивается, temp назначается temp.nextNode.
  • Как только список достигает конца, счетчик возвращается в качестве вывода.

Вывод

Вы можете подписаться на House of Codes, чтобы получать обновления, когда мы публикуем новые задачи по программированию. Также вы можете отправить нам свои решения или свои идеи для любой задачи кодирования. Мы были бы рады прочитать их. ;)