Форум программистов, компьютерный форум CyberForum.ru

Алгоритм Дейкстры - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шифрование методом цезаря http://www.cyberforum.ru/cpp-beginners/thread1062888.html
Здравствуйте, прошу вас о помощи. Это может показаться наглым, но, мне срочно нужна помощь с курсовым проектом, дело в том что с горем пополам я написал программу для шифрования методом цезаря, но меня ждал сюрприз, препод огорчил меня тем что нужно было делать все на билдере или подобие ему. Отправила на перездачу, а времени по просту не хватает, очень надеюсь на вашу помощь, нужна форма с...
C++ Нужно заменить последнюю заглавную букву в строке на слово "Kukushechka" То есть программа должна сама искать последнюю заглавную букву, определять ее номер в строке, ставить вместо нее и последующего текста слово "Kukushechka". В таком состоянии она только определяет номер и никак не хочет заменять. #include "stdafx.h" #include <conio.h> #include <stdio.h> #include <string.h> #include <iostream> using namespace std; char f( char *g, char* kuk); http://www.cyberforum.ru/cpp-beginners/thread1062881.html
Странное поведение cin C++
Перегружаю оператор ввода следующим образом: #include <iostream> using namespace std; class Vector2D { public: long double x, y;
C++ Однонаправлений список. Операції: “[]” видалити елемент в заданій позиції, наприклад: int i; list L; L[i]; “[]” додати елемент в задану позицію, напр
Помогите. Есть одна написаная. Условия: Черга. Операції: “+” додати елемент ; “-“ видалити елемент ; bool() перевірка «чи порожня черга?» В ней все работает, все запускается, не могу переделать на вот эту УСЛОВИЕ: Однонаправлений список. Операції: “” видалити елемент в заданій позиції, наприклад: int i;
C++ Теорема Пифагора http://www.cyberforum.ru/cpp-beginners/thread1062868.html
Здравствуйте, программа всякий раз выводит в ответе "0". В чём ошибка? Благодарен! Язык C++, Visual C++ 2008 Express #include <iostream> #include <conio.h> #include <math.h> using namespace std; int a, b, c, result; int main() { setlocale(0, ""); cout <<"Если элемент неизвестен - пишем 0"<<endl;
C++ Точка останова(повреждение кучи) Прошу помочь, смотрел по форуму похожие темы - ответа не нашел void Base::Read() { char* name=new char;//переменная для имени char* str=new char;//для построчного чтения файла ifstream in;//поток для чтения bool flag=true; do //открываем файл { cout<<"Please, enter file name: "; подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
05.01.2014, 07:26     Алгоритм Дейкстры
Цитата Сообщение от denysd21012011 Посмотреть сообщение
Подправил немного, но все равно( 9 из 11 тестов работает)
на будущее: если Вам что-то ясно и очевидно, то подумайте о других: знают ли они о чем знаете Вы?
Условия задачи отсутствует, поэтому можно только догадываться о максимальных значениях n. Может быть слишком маленькие массивы?
9 из 11 тестов работает. Получается что 2 не работают. А что именно выдает на этих тестах: ошибку или превышение времени выполнения?
см комментарии:
Цитата Сообщение от denysd21012011 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
for (int k=0; k<n; k++) {// в этом цикле по задумке нужно сначало найти индекс вершины, которая не помечена и имеет минимальное значение в массиве res[]
  h=1;// изначально индекс этой вершины выбираем равным 1 (но в некоторых случаях вершина с номером 1 может быть уже помечена и иметь минимальное значение res[h] по сравнению с остальными непомечеными). В этих же тестах s имеет значение не равное 1.
  for (int j=1; j<n+1; j++)
    if (!used[j] && ((h==s && k!=0) || res[j]<=res[h])) h = j;
  used[h]=true;// в результате здесь h может остаться равным 1. И перебор ниже мы повторим (уже его делали когда первый раз пометили вершину с индексом 1). И будем повторять этот же перебор пока k не станет равным n.    А нужных вычислений так и не сделаем.
  if (res[h]==INF) break;
  for (int j=1; j<n+1; j++) 
    if (a[h][j]!=-1) res[j]=min(res[h]+a[h][j],res[j]);
}
поэтому переделайте алгоритм выбора непомеченой вершины с минимальным значением в res[].
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru