|
|
|
|
Rate it
|
|
|
0.0
stars , 0 votes
|
|
Like it
|
|
|
Total downloads
|
165
|
|
Last update
|
June 25, 2010
|
|
Publisher
|
Andriy Kozachuk
|
|
License
|
Free |
|
OS
|
Windows
|
|
Size
|
0.3 MB
|
|
Share
|
|
|
|
Description
It provides all the basic arithmetic operations on integers, comparing, bitwise shifting etc. It also allows parsing numbers in different bases and converting them to string, also in any base. The advantage of this library is fast multiplication, division and from base/to base conversion algorithms - all the fast versions of the algorithms are based on fast multiplication of big integers using Fast Hartley Transform which runs for O(N * log N * log log N) time instead of classic O(N^2).
Bits of History I have written IntX basically because I like big numbers and had some free time. Initial implementation was standard - I was using standard big integers +, -, *, / algorithms from Khuth book. After library was written I've decided to participate in contest held by GotDotNet.ru and received some replies which were saying that my library is too ... usual. Well, it was true, so I've decided to implement some more interesting algorithms in it.
I've started with writing multiplication using Fast Hartley Transform so big integers multiplication time estimate became to be O(N * log N * log log N) (here N is amount of DWORDs in number representation) which was a bit better then O(N^2) with classic algorithm :) Then I saw fast algorithm for transforming from one base to another in Knuth book; it was based on fast multiplication so Parse()/ToString() started working faster - O(N * (log N)^2) instead of O(N^2). Finally division was also optimized (again, with the help of fast multiplication) - became as fast as multiplication.
All this happened in 2005 year and in 2008 I've decided to publish this library on CodePlex - maybe it will be useful for someone out there (well, there is not so many similar libraries under .NET; also System.Numeric.BigInteger from .NET FW 3.5 was cancelled). Before publishing it on CodePlex I also made some cosmetic changes in code - used new .NET 2.0 features like generics (to minimize code duplication) and rewritten unit tests to use NUnit (they were previously written for MbUnit which is almost unknown and not used by community).
Code Example Here is the sample of code which uses IntX and calculates 42 in power 1048576 (which is 2^20):
|
|
Post your review about this product
|
All software reviews and articles becomes the sole property of Place77 . You acknowledge that you are responsable for the contents of your submission.Place77 reserves the right to remove or refuse to post any submission for any reason.
|
Top Software in Components Libraries |
|
1.
|
LibUsbDotNet 2.2.5
All basic USB device functionality can be performed through common device classes allowing you to
|
|
2.
|
ODAC 6.90.0.59
Oracle Data Access Components (ODAC) is a library of components that provides native connectivity to
|
|
3.
|
libJSON 4.0
A JSON reader and writer which is super-effiecient, which runs circles around any other competing
|
|
4.
|
LibXL 2.4.3
It doesn't require Microsoft Excel and combines an easy to use and powerful features. Library
|
|
5.
|
SevenZipSharp 0.62
SevenZipSharp is an open source wrapper for 7-zip released under LGPL v3.0. It exploits the
|
IntX 0.9.3.3 Copyright Information
Place77 periodically updates pricing and software information about full version from the publisher. Mirror links are directly from our servers or publisher's sites.
|
|
Featured
|
TActive Movie
TActiveMovie is a VCL component for Delphi or C++ Builder.It helps you to embed the Microsoft's Media Player 6.4 within your application for Windows XP, Windows.
|
|