AuthorIo. D

Reverse a Simple Linked List in C

Some more advanced functions for simple linked lists such as reserving could be a good reference. The following code snippet is a simple function for reversing a simple linked list. Please check also Using a Simple Linked List as Stack in C Using a Simple Linked List as Queue in C struct node_t * reverse(struct node_t * head) { struct node_t * temp = head; struct node_t * new_head =...

Inorder, Preorder and Postorder Traversal using C Programming

A major operation, which we often apply in a binary tree is the traverse. There are three different methods for traversing a tree: Preorder Inorder Postorder The following code snippets are these methods in C : void preorder_traversal(struct node_t * node) { if (node == NULL) return; printf("%dn", node->value); preorder_traversal(node->left); preorder_traversal(node->right); } void...

Simple and effective Semaphore for C++

A semaphore object is a synchronization object that maintains a count between zero and a specified maximum value. The count is decremented each time a thread completes a wait for the semaphore object and incremented each time a thread releases the semaphore. When the count reaches zero, no more threads can successfully wait for the semaphore object state to become signaled. The state of a...

CRC8 Simple Algorithm for C

The following code snippet is about CRC8 hash function. Usually in embedded systems there is an already built-in function for CRC8-16-32 etc. However in case there is not, here is a simple approach for it. CRCs are so called because the check (data verification) value is a redundancy (it expands the message without adding information) and the algorithm is based on cyclic codes. CRCs are popular...

A few words about Locomotion

A mobile robot needs locomotion mechanisms that enable is to move unbounded through-out its environment. However, there is a large variety of possible movement ways and so the selection of a robot’s approach to locomotion is an important aspect of mobile robot design. Most of the locomotion mechanisms have been inspired by their biological counterparts. Biological systems succeed in moving...

Gloves that can translate sign language into speech

Two undergraduate students at the University of Washington have created a pair of smart gloves that can translate American Sign Language (ASL) automatically into text or speech. Designed to help bridge the communication gap between the Deaf and hearing communities, the SignAloud gloves use sophisticated sensors to recognize ASL gestures. They were recently awarded a $10,000 Lemelson-MIT Student...

Internet of Things vs Remotely Controlled Devices

Until now we are all familiar with the Internet of Things concept. Or we think so. At its very basic level, IoT refers to the connection of everyday objects to the Internet and one another, with the goal being to provide users with smarter, more efficient experiences. A lot of people, as well as companies (probably for marketing reasons), have confused the real meaning of IoT. Developing a device...

Using Shared Memory in Linux Systems

Shared Memory is an efficient means of passing data between programs. One program will create a memory portion which other processes (if permitted) can access. A process creates a shared memory segment using shmget()|. The original owner of a shared memory segment can assign ownership to another user with shmctl(). It can also revoke this assignment. Other processes with proper permission can...

What is Particle Swarm Optimization?

Particle swarm optimization (PSO) is a population based stochastic optimization technique developed by Dr. Eberhart and Dr. Kennedy  in 1995, inspired by social behavior of bird flocking or fish schooling. PSO shares many similarities with evolutionary computation techniques such as Genetic Algorithms (GA). The system is initialized with a population of random solutions and searches for optima by...

Global Robotics Technology Market

Robotics technology is used in a wide range of industries including automotive, healthcare, aerospace, infrastructure and defense. They can be used for numerous activities The increasing need of automation solutions is a factor that drives the international market. Manufacturers are increasingly opting for process automation, owing to the rise in labor costs and market competition. A dynamic rise...

Disclaimer: The present content may not be used for training artificial intelligence or machine learning algorithms. All other uses, including search, entertainment, and commercial use, are permitted.

Categories

Tags