In this paper, the usage of the A* pathfinding algorithm for the implementation and performance of both Python and Java are being compared. The research focuses on the time taken for executing programs, space complexity, and scalability where different tests have been done on datasets of varying sizes and difficulty. Python is comprehensive and fast in development; therefore, it is ideal for the creation of a proof of concept and less complex applications. However, due to its interpretation property, it is more complex than other algorithms to work with large volumes of data and applications in real-time. Java is based on writing compiling, and statically typed language which gives the advantage of quicker execution and improved memory management, which makes the language more suitable for applications that are more sensitive to performance. The activities are to provide A* in two languages, to perform experiments with different test cases, as well as to evaluate performance indices. Issues of ethics about increase in availability, equity, and sustainability are also touched on. In this regard, the study wants to help the developers identify the most appropriate language depending on the application.
A* Algorithm, Heuristic search, Time complexity, Space complexity
The A* algorithm is widely known as one of the best path-finding and graph traversal algorithms in several disciplines, from video games to robotics. Here in this study, we look into the A* search algorithm and its implementation using two popular programming languages i.e. Python and Java. This work aims to contrast the performance characteristics of A* between these two languages and shed some light on which one is better than or worse at in which use case. So the developers can select a programming language as per their use case after analysis given here. The A* uses heuristics to guide which paths are examined, making it much more efficient than uninformed search algorithms. In this scenario, it will find the best solution, which has made it a common algorithm in some areas like Geographic Information Systems (GIS), game development, and artificial intelligence.