âšī¸ Skipped - page is already crawled
| Filter | Status | Condition | Details |
|---|---|---|---|
| HTTP status | PASS | download_http_code = 200 | HTTP 200 |
| Age cutoff | PASS | download_stamp > now() - 6 MONTH | 0.7 months ago |
| History drop | PASS | isNull(history_drop_reason) | No drop reason |
| Spam/ban | PASS | fh_dont_index != 1 AND ml_spam_score = 0 | ml_spam_score=0 |
| Canonical | PASS | meta_canonical IS NULL OR = '' OR = src_unparsed | Not set |
| Property | Value |
|---|---|
| URL | https://www.geeksforgeeks.org/dsa/bellman-ford-algorithm-in-python/ |
| Last Crawled | 2026-03-20 12:55:33 (21 days ago) |
| First Indexed | 2025-06-22 08:43:27 (9 months ago) |
| HTTP Status Code | 200 |
| Meta Title | Bellman-Ford algorithm in Python - GeeksforGeeks |
| Meta Description | Your All-in-One Learning Portal: GeeksforGeeks is a comprehensive educational platform that empowers learners across domains-spanning computer science and programming, school education, upskilling, commerce, software tools, competitive exams, and more., Your All-in-One Learning Portal. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions. |
| Meta Canonical | null |
| Boilerpipe Text | null |
| Markdown | [](https://www.geeksforgeeks.org/)
- Courses
- Tutorials
- Interview Prep
- [DSA Tutorial](https://www.geeksforgeeks.org/dsa/dsa-tutorial-learn-data-structures-and-algorithms/)
- [Interview Questions](https://www.geeksforgeeks.org/dsa/top-100-data-structure-and-algorithms-dsa-interview-questions-topic-wise/)
- [Quizzes](https://www.geeksforgeeks.org/dsa/data-structures-and-algorithms-online-quiz/)
- [Must Do](https://www.geeksforgeeks.org/dsa/must-do-coding-questions-for-companies-like-amazon-microsoft-adobe/)
- [Advanced DSA](https://www.geeksforgeeks.org/dsa/advanced-data-structures/)
- [System Design](https://www.geeksforgeeks.org/system-design/system-design-tutorial/)
- [Aptitude](https://www.geeksforgeeks.org/aptitude/aptitude-questions-and-answers/)
- [Puzzles](https://www.geeksforgeeks.org/aptitude/puzzles/)
- [Interview Corner](https://www.geeksforgeeks.org/interview-prep/interview-corner/)
- [DSA Python](https://www.geeksforgeeks.org/dsa/python-data-structures-and-algorithms/)
# Bellman-Ford algorithm in Python
Last Updated : 8 Mar, 2025
Given a ****weighted**** graph with ****V**** vertices and ****E**** edges, and a source vertex ****src****, find the ****shortest path**** from the source vertex to all vertices in the given graph. If a vertex cannot be reached from source vertex, mark its distance as 108.
****Note****: If a graph contains negative weight cycle, return -1.
****Bellman-Ford**** is a single source shortest path algorithm. It effectively works in the cases of negative edges and is able to detect negative cycles as well. It works on the principle of relaxation of the edges.
****Examples:****
> ****Input:**** V = 5, edges = \[\[1, 3, 2\], \[4, 3, -1\], \[2, 4, 1\], \[1, 2, 1\], \[0, 1, 5\]\], src = 0
>
> 
>
> Example
>
> ****Output******: \[0, 5, 6, 6, 7\]**
>
> ****Input******: V = 4, edges = \[\[0, 1, 4\], \[1, 2, -6\], \[2, 3, 5\], \[3, 1, -2\]\], src = 0**
>
> 
>
> Example
>
> ****Output******: \[-1\]**
> ****Explanation:**** **The graph contains negative weight cycle.**
### ****Approach****
> The Bellman-Ford algorithm works by traversing all edges `|V| - 1` times, where `|V|` is the number of vertices. After each iteration, the algorithm relaxes all the edges. If a shorter path is found from the source to a vertex during any iteration, then the distance of that vertex is updated.
## Step-by-step algorithm
1. Initialize distances to all vertices as infinite and the distance to the source vertex as 0.
2. Relax all edges `|V| - 1` times.
3. If we can find a shorter path, then there is a negative weight cycle in the graph.
## Working of Bellman-Ford Algorithm
Below is the Python implementation of the algorithm:
Python
``
**Output**
```
{'A': 0, 'B': -1, 'C': 2, 'D': -2, 'E': 1}
```
****Time Complexity:**** O(V \* E \* E), where V is the number of vertices and E is the number of edges
****Auxiliary Space:**** O(V)
Comment
Article Tags:
Article Tags:
[Graph](https://www.geeksforgeeks.org/category/dsa/data-structures/graph/)
[DSA](https://www.geeksforgeeks.org/category/dsa/)
[Python-DSA](https://www.geeksforgeeks.org/tag/python-data-structures/)
### Explore
[](https://www.geeksforgeeks.org/)

Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)

Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
[](https://geeksforgeeksapp.page.link/gfg-app)[](https://geeksforgeeksapp.page.link/gfg-app)
- Company
- [About Us](https://www.geeksforgeeks.org/about/)
- [Legal](https://www.geeksforgeeks.org/legal/)
- [Privacy Policy](https://www.geeksforgeeks.org/legal/privacy-policy/)
- [Contact Us](https://www.geeksforgeeks.org/about/contact-us/)
- [Advertise with us](https://www.geeksforgeeks.org/advertise-with-us/)
- [GFG Corporate Solution](https://www.geeksforgeeks.org/gfg-corporate-solution/)
- [Campus Training Program](https://www.geeksforgeeks.org/campus-training-program/)
- Explore
- [POTD](https://www.geeksforgeeks.org/problem-of-the-day)
- [Job-A-Thon](https://practice.geeksforgeeks.org/events/rec/job-a-thon/)
- [Blogs](https://www.geeksforgeeks.org/category/blogs/?type=recent)
- [Nation Skill Up](https://www.geeksforgeeks.org/nation-skill-up/)
- Tutorials
- [Programming Languages](https://www.geeksforgeeks.org/computer-science-fundamentals/programming-language-tutorials/)
- [DSA](https://www.geeksforgeeks.org/dsa/dsa-tutorial-learn-data-structures-and-algorithms/)
- [Web Technology](https://www.geeksforgeeks.org/web-tech/web-technology/)
- [AI, ML & Data Science](https://www.geeksforgeeks.org/machine-learning/ai-ml-and-data-science-tutorial-learn-ai-ml-and-data-science/)
- [DevOps](https://www.geeksforgeeks.org/devops/devops-tutorial/)
- [CS Core Subjects](https://www.geeksforgeeks.org/gate/gate-exam-tutorial/)
- [Interview Preparation](https://www.geeksforgeeks.org/aptitude/interview-corner/)
- [Software and Tools](https://www.geeksforgeeks.org/websites-apps/software-and-tools-a-to-z-list/)
- Courses
- [ML and Data Science](https://www.geeksforgeeks.org/courses/category/machine-learning-data-science)
- [DSA and Placements](https://www.geeksforgeeks.org/courses/category/dsa-placements)
- [Web Development](https://www.geeksforgeeks.org/courses/category/development-testing)
- [Programming Languages](https://www.geeksforgeeks.org/courses/category/programming-languages)
- [DevOps & Cloud](https://www.geeksforgeeks.org/courses/category/cloud-devops)
- [GATE](https://www.geeksforgeeks.org/courses/category/gate)
- [Trending Technologies](https://www.geeksforgeeks.org/courses/category/trending-technologies/)
- Videos
- [DSA](https://www.geeksforgeeks.org/videos/category/sde-sheet/)
- [Python](https://www.geeksforgeeks.org/videos/category/python/)
- [Java](https://www.geeksforgeeks.org/videos/category/java-w6y5f4/)
- [C++](https://www.geeksforgeeks.org/videos/category/c/)
- [Web Development](https://www.geeksforgeeks.org/videos/category/web-development/)
- [Data Science](https://www.geeksforgeeks.org/videos/category/data-science/)
- [CS Subjects](https://www.geeksforgeeks.org/videos/category/cs-subjects/)
- Preparation Corner
- [Interview Corner](https://www.geeksforgeeks.org/interview-prep/interview-corner/)
- [Aptitude](https://www.geeksforgeeks.org/aptitude/aptitude-questions-and-answers/)
- [Puzzles](https://www.geeksforgeeks.org/aptitude/puzzles/)
- [GfG 160](https://www.geeksforgeeks.org/courses/gfg-160-series)
- [System Design](https://www.geeksforgeeks.org/system-design/system-design-tutorial/)
[@GeeksforGeeks, Sanchhaya Education Private Limited](https://www.geeksforgeeks.org/), [All rights reserved](https://www.geeksforgeeks.org/copyright-information/) |
| Readable Markdown | null |
| Shard | 103 (laksa) |
| Root Hash | 12046344915360636903 |
| Unparsed URL | org,geeksforgeeks!www,/dsa/bellman-ford-algorithm-in-python/ s443 |