Programmers' Toolbox

A* Demo

Introduction

This is a simple implementation of the A* search algorithm on Android and Windows Phone devices.

The application accepts either a map file as input, or just the simple drawings made by the user via UI gestures.

It is composed of two modules, the main library containing the A* search implementation and basic map drawing, developed in portable C++14 code.

The Android specific UI code done in Java, with the respective JNI bindings for the library. While the Windows Phone UI is done with C++/CX.

Update: as of June 2020, I have ported the code into a Windows only version, using C++/WinRT instead of C++/CX, given that C++/CX is now deprecated.

Update: as of October 2021, I have updated the C++/WinRT to take advantage of C++ 20 modules. This version is currently available on Github.

As information for this application, two very good sources on the A* search algorithm were used, namely:

Screenshots

Downloads

The original source code.

The source code ported to C++/WinRT.