The 10 Most Prestigious Programming Contests and Challenges

This is a list of 10 most prestigious and old programming contests and challenges which you can participate and win prizes. Most of them are annual competitions but few are continuous and you can enter at any time. You can use C, C++, Java or C# .NET or any other programming language in these contests.

C Algorithms Library

This article is about a collection of common Computer Science algorithms which may be used in C projects. The C Programming Language has a much smaller Standard Library as compared to other more modern programming languages such as Java or Python. The library provides a basic set of mathematical functions, string manipulation, type conversions, and file and console-based I/O.

Find the middle element of linked list in C

In order to find middle element of linked list in one pass, you need to maintain two pointers, one increment at each node while other increments after two nodes at a time. By having this arrangement, when first pointer reaches end, second pointer will point to middle element of linked list.

Free Programming Abstractions Course – SEE

Stanford Engineering Everywhere (SEE) offers few computer science courses to students online and at no charge. Programming Abstractions course covers advanced programming topics such as recursion, algorithmic analysis, and data abstraction using the C++ programming language, which is similar to both C and Java.

Kruskal’s Algorithm Implementation in C

This is the implementation of Kruskal’s Algorithm in C Programming Language. This algorithm is directly based on the generic MST (Minimum Spanning Tree) algorithm. Kruskal’s algorithm is a greedy algorithm in graph theory that finds a minimum spanning tree for a connected weighted graph. It finds a subset of the edges that forms a tree that includes every vertex, where the total weight of all the edges in the tree is minimized.

Porter’s Algorithm in C

Originally written in 1979 at Computer Laboratory, Cambridge (England), it was reprinted in 1997 in the book “Readings in Information Retrieval”. Initially it was written in BCPL language. Here is the list of implementations in other programming languages including C, Java and Pearl implementations done by author himself.

Algorithms in C

This book provides a comprehensive collection of algorithms implemented in C programming language. A variety of algorithms are described in each of the following areas: sorting, searching, string-processing, and geometric, graph, and mathematical algorithms. These...

Data Structures and Algorithm Analysis in C++ (2nd Edition)

In this second edition of his successful book, experienced teacher and author Mark Allen Weiss continues to refine and enhance his innovative approach to algorithms and data structures. Written for the advanced data structures course, this text highlights theoretical...

Data Structures and Algorithm Analysis in Java

Provides a proven approach to algorithms & data structures using the exciting Java programming language as the implementation tool. With Java, the author highlights conceptual topics, focusing on ADTs and the analysis of algorithms for efficiency as well as...

Bayer-Trees implementation in C

This is implementation of Bayer-Trees, which are normally used for indices of data bases. These routines provide all stuff that is needed to create and destroy; insert, update and delete; load and destroy; search and traverse; check a tree. Sort huge amounts of data by doing a multi-phase sorting on temporary files.

Generating fast sorting routines

In a lot of programs my gensort-utility turned out to be very useful. It consists simply of the header file “gensort.h”, contained in the above package. To obtain a sorting routine, simply define the name of the routine, the data type you want to sort and...

Standard Function Library – ANSI C

The SFL (Standard Function Library) is an open source portable function library for C/C++ programs. Written by iMatix, the SFL provides about 450 functions for compression, encryption, encoding, datatype conversion and formatting, dates, times, calendars, internet programming (MIME, CGI) and many more.

Sort Huge amount of data

The bigsort routine implements a way to sort huge amounts of data that do not fit into main memory by using a multi-phase sorting on files. It is a implementation from the book “Algorithms and data structures” by Niklaus Wirth. Additionally, this routine...

The Standard C++ Library: Generic algorithms

Algorithms are at the core of computing. To be able to write an algorithm once and for all to work with any type of sequence makes your programs both simpler and safer. The ability to customize algorithms at runtime has revolutionalized software development.The subset...

C Implementation of Various Sorting Algorithms

This is a simple C implementation of various sorting algorithms such as Bubble Sort, Insertion Sort, Selection Sort and Shell Sort.   Bubble Sort Bubble sort, is a simple comparison-based sorting algorithm that repeatedly steps through the list, compares adjacent...

256-bit Serpent VB Implementation

This is a slow but working Visual Basic implementation of the 256-bit Serpent algorithm. Serpent was a finalist for Advanced Encryption Standard (AES) and appears to be a very secure powerful algorithm. The Advanced Encryption Standard, or AES, is a symmetric block cipher chosen by the U.S. government for the encryption of classified electronic data and is implemented in software and hardware throughout the world to encrypt sensitive data.

Quicksort implementation in C

Quicksort is a well-known sorting algorithm developed by C.A.R. Hoare: Quicksort. QuickSort is an efficient algorithm based on Divide and Conquer rule and is still a commonly used algorithm for sorting. It works by selecting a ‘pivot’ element from the array and partitioning the other elements into two sub-arrays and recursively sorting them.