Showing posts with label computer. Show all posts
Showing posts with label computer. Show all posts

Understanding Algorithms: A Brief Tour Through History and Classification

Understanding Algorithms: A Brief Tour Through History and Classification 



Illustration MMillustrates at Pixabay


Artificial intelligence, machine learning, and deep learning have become common nowadays in many areas. We talk about artificial intelligence as it is like a mythological being surrounding us. 

But it's not, or almost not. 

Artificial intelligence is only a program in a computer created by us humans, filled with data from us humans, and executed with help of a bunch of algorithms.


What are algorithms then, are those the mythical beings controlling the artificial intelligence that controls us humans?

Almost, but not really.

Algorithms can be either mathematical or non-mathematical, and computer programs frequently use them to carry out particular tasks.


Although algorithms are often invented and constructed by people, they can also be built by other algorithms. This is also referred to as "algorithmic recursion" or "algorithmic self-replication." Based on certain inputs or conditions, algorithms may occasionally be built to produce new algorithms or modify already existing algorithms. 


So let's talk about algorithms.


A set of instructions called an algorithm describes how to carry out a given task or solve a particular problem. Search engines, machine learning, data analysis, and many other applications require algorithms, which are a fundamental component of computer science.


The name of the mathematician Muhammad ibn Musa al-Khwarizmi, who was a pioneer in the science of algebra, is where the word "algorithm" originates. Although algorithms have been known for centuries, their significance has grown recently as computers and other technical gadgets have become more swift and potent.


Algorithms come in a wide variety of forms and can be categorized in numerous ways. Algorithms are frequently categorized according to their design (how they are constructed), complexity (how long they take to run), and purpose (what they are used for).


The effectiveness of algorithms is a crucial consideration. Designing algorithms that can solve issues quickly and effectively is becoming more and more crucial as computers and other technological devices get quicker and more powerful. This calls for a thorough comprehension of computer science concepts as well as the capacity for critical and inventive problem-solving.


It is useful to look at a specific example to comprehend how algorithms operate. The "sorting algorithm," one of the most well-known algorithms, is used to organize a group of things in a specific order. Although there are many distinct sorting algorithms, "bubble sort" is one of the most fundamental.


The bubble sort algorithm operates as follows:


Start with a list of things that are not sorted.

Compare the list's first two items. Change the order of the items if the first is greater than the second.

The second and third entries in the list should be compared. Change the order of the items if the second item is greater than the third.

Once you've reached the end of the list, repeat this step.

Repeat the procedure starting at the beginning of any swaps that were done in the previous stage. The list is arranged if there were no swaps.

This may seem like a straightforward illustration, but it highlights some important algorithmic ideas. An algorithm, first and foremost, is a series of actions that can be taken to address an issue in a particular order. Second, an algorithm may make judgments and comparisons depending on the information provided. Third, an algorithm can include repeatedly doing a task up until a predetermined condition is met.


There are many more types of algorithms, and the most prevalent ones can be categorized in several ways. Here are some further illustrations of various sorts of algorithms and descriptions of how they operate:


Search algorithms: Using these methods, one can look for certain things inside a broader data set. Examples include binary search, which finds an item by dividing the data set in half and examining which half the item is most likely to be in, and linear search, which looks at each element in the data set separately to find an item.


Comparison-based algorithms: These algorithms work on the principle that elements should be compared to one another to establish their relative order or position. One illustration is quicksort, which chooses a pivot element and reorganizes the data set so that all elements that are less than the pivot appear before it and all elements that are larger than the pivot appears after it.


The optimization algorithm's goal is to identify the optimum solution to a problem given a set of restrictions or limitations. Examples include simulated annealing, an algorithm used to find the global minimum of a function by starting at a high temperature and gradually cooling it down, and gradient descent, an algorithm used in machine learning to find the minimum of a function by taking small steps in the direction of the negative gradient.


Algorithms for machine learning: These algorithms allow computers to learn and decide for themselves without being explicitly programmed. Examples include neural networks, which are used to identify patterns and make judgments based on those patterns, and decision trees, which are used to build models that can make predictions based on certain inputs.


Want to new more?

There are numerous resources, including books, online tutorials, and university-level computer science courses, that can be used to learn more about algorithms. Coursera (https://www.coursera.org/courses?query=algorithms), Khan Academy (https://www.khanacademy.org/computing/computer-science), and the textbook "Introduction to the Design and Analysis of Algorithms" (a direct link to PDF file) by Anany Levitin are a few well-liked resources for learning about algorithms.


Algorithms are fundamental to computer science and are employed to address a variety of issues. You may master this subject and help create fresh, cutting-edge solutions by studying algorithms and honing your problem-solving abilities.










What is a HEIC file on your iPhone and how do you open it in Windows.

iPhone and iPad take photographs in the HEIF picture format. These photographs have the HEIC document expansion. If you want to see HEIC pictures on Windows 10 or Windows 11 do you have to convert them to JPEG or download a HEIC image extension from Microsoft.


Photo RODNAE Productions from Pexels free photos


What is HEIC?

More about that later, but first, HEIC needs an explanation. What is HEIC (short for High-Efficiency Image Container) and why is Apple using this extension. Assuming you're utilizing iOS 11 or later, you might have seen that photographs taken with your iPhone camera are saved as HEIC documents rather than the past arrangement, JPEG. This new record design was acquainted with offering better compression of the picture while as yet saving quality. The problem with HEIC is that it's not commonly workable with other applications or gadgets, and you will be unable to open a HEIC photograph right away when you move it to your PC.

Why have they changed to this format? 

HEIC compresses images at about 40-50% compared to similar images shot in the JPEG format.

That allows you to store almost twice the number of photos in the same amount of space on your phone.

HEIC utilizes a lot of compressions to think of more modest record sizes. However, here's the characterizing factor, it additionally matches the JPEG format in visual quality.

HEIC is the finest format in almost every way. You get significantly lower-sized photographs at almost, if now not better, quality than JPEG format.


Photo Richard Balane from Pexels free photos


What happens when you change the format from HEIC to JPEG?


JPEG uses a lossy compression technology, it automatically loses quality. That is, it discards data to reduce the size of the file during encoding. There is no way to recover the information that has been lost. When the image is decoded, you'll get a rough representation of the original image. It can be a very near approximation or a very horrible approximation, depending on the quality level, but it's always an approximation. 




HEIC uses lossless compression, which means that no matter how many times you decode and re-encode it, the result is always the same.


If you want to copy your images from iPhone could you convert HEIC files to JPEG when copying them to a PC, iPhone has that function but with loss.

So when you should open a HEIC format in Windows is it better to download the HEIC extension from Microsoft rather than change the format to JPEG.

Microsoft has released a codec called HEIF Image Extensions, which will allow you to view and open HEIC files. Once you have it installed, your computer will see HEIC photos just like any other image file. And when you install HEIC for Windows on your computer, you can install an extension that will permit you to no longer only open HEIC archives but convert them to JPEG as well, if you download CopyTrans HEIC for Windows

If you need it.


Photo Samson Katt from Pexels free photos


How do you do that?


It is quite easy to download the extension. 

On modern versions of Windows 10, you can introduce help for the HEIC photo extension in a couple of seconds. This works in Windows 11 too. 

Initially, discover a HEIC record in document explorer for your computer and double-tap it. To open it in, choose photographs.

The Photos application will let you know that the HEIF Image extensions are needed to show this document. Click the "Download and introduce it currently" connection to get it from Microsoft. It's a free download, and introducing it will just take a couple of seconds.

When Windows asks “Did you mean to switch apps?,” select Yes.

This will open the HEIF Image Extensions page in the Microsoft Store app. Click the Install button to download and deploy support for HEIC picture files.

Now you can see your images from your iPhone like any other picture on your computer.

Windows File Explorer will naturally create and show thumbnails for your HEIC picture files, as well.


As I mentioned before you can convert a HEIC file to JPEG.

Download the CopyTrans HEIC for Windows, and install it.

CopyTrans HEIC likewise permits you to right-click a HEIC document in File Explorer and select "Convert to JPEG" to rapidly and effectively convert it to a JPEG file. Select the choice and you'll get a JPEG adaptation of the picture consequently positioned in a similar envelope as the first HEIC record.


Adobe Photoshop and many other applications are gaining extensions for HEIC too. 

There is some online conversion application for converting HEIC files to JPEG if you quickly need a JPEG file, but with some loss of quality.

It is better to install the extensions instead.


Hope I gave you some help and light on what you should do when transferring your images to a Windows computer.



LEGO Star Wars Nebulon-B Frigate Interlocking Block Building Sets 77904 LEGO Star Wars Midi-Scale Imperial Star Destroyer (8099)
LEGO Star Wars: Slave I - 1996 Piece Building Kit [LEGO, #75060, Ages 14+] LEGO Star Wars TIE Fighter Attack 75237