Algorithms

An algorithm is a self-contained step-by-step set of operations to be performed. Algorithms exist that perform calculation, data processing, and automated reasoning. Starting from an initial state and initial input (perhaps empty), the instructions describe a computation that, when executed, proceeds through a finite number of well-defined successive states, eventually producing "output" and terminating at a final ending state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as randomized algorithms, incorporate random input.

Share tech news, updates, or what's on your mind.

Sign up to Post

Imagine you have a dataset of rowers. You have X variables such as weight, benchpress, deadlift, squat, nutrition, etc. You also have each rower's lap time.

Now, let's say for a given rower, you want to optimize her lap time, but you can only train along ONE DIMENSION. How would you identify the best attribute to optimize?

I thought about a grid search, but that seems awful. Which family of machine learning algorithms would be best for this type of problem, and how would you attack it?

Thanks a million!
0
[Webinar] How Hackers Steal Your Credentials
LVL 9
[Webinar] How Hackers Steal Your Credentials

Do You Know How Hackers Steal Your Credentials? Join us and Skyport Systems to learn how hackers steal your credentials and why Active Directory must be secure to stop them. Thursday, July 13, 2017 10:00 A.M. PDT

I have the Excel file below with 3 columns.
On one row I have a pair of q, k corresponding to a certain x.
In the sheet are different values for x.
I need to find what pairs of q, k are common for all values of x.
How do you do that fast and easy?
Pairs.xlsx
0
What is the best and easiest approach, method, software to solve a system like the one below?

1=1*(3.14*2^p-1*1*[(23.14-5)*2^q-1*1*(3.14-3)/2^k]/2^r)/2^s
3=8*(3.14*2^p-8*8*[(23.14-5)*2^q-8*8*(3.14-3)/2^k]/2^r)/2^s
50=128*(3.14*2^p-128*128*[(23.14-5)*2^q-128*128*(3.14-3)/2^k]/2^r)/2^s
2896=8192*(3.14*2^p-8192*8192*[(23.14-5)*2^q-8192*8192*(3.14-3)/2^k]/2^r)/2^s
4096=16384*(3.14*2^p-16384*16384*[(23.14-5)*2^q-16384*16384*(3.14-3)/2^k]/2^r)/2^s

Could you help to find a set of solutions? I guess are more than one.
This is not homework, but rather one of that engineering approximation problem that ended up in a set of unknown variables.

Basically the function is.
S5(x)=x*(PI*2^p-x*x*[(2PI-5)*2^q-x*x*(PI-3)/2^k]/2^r)/2^s
with p, q, k, r, s unknown.
And next known set of solutions with 1 digit approximation allowed for S5x:
x - S5x
1 - 0
2 - 1
4 - 2
8 - 3
16 - 6
32 - 13
64 - 25
128 - 50
256 - 101
512 - 201
1024 - 401
2048 - 799
4096 - 1567
8192 - 2896
16384 - 4096
0
I have question about the GA application in an intrusion detection, what programming language can be applied for this type of problem.
0
Hey,

I have an audio file, many actually, that are an interview between the interviewer and interviewee.  The same person is asking questions in each file, while the people answering are different.

I need to separate the answers out by generating silence over the interview questions. I'm currently doing this by hand with audacity, but it is extremely time consuming.

Any help would be greatly appreciated.  I am a software developer, but audio is not my area, so code is am option if there isn't a program available.

Thanks
0
If I am comparing my algorithm to another algorithm. My algorithm has a complexity f O(n) whereas the other algorithm is O(n2).

I then measured the running time by implementing the algorithms.

Should the running time of the other algorithm be the square of the running time of my algorithm?

For example of my algorithm running time is 3 ms should the other algorithm running time be 9?
0
I got a requirement from my client that he wishes to encrypt/ password protect some of the documents, before sending over to another user in another regional office.

By not writing the password into the email body.

How can the user in another regional office knows the password to decrypt/ open the protected documents?

What approach should be adopted? Is there any standard/ algorithm I can refer to? But we prefer not to use any 3rd party software/ utility.

Thank you.
0
the array has series of numbers Need to find all pairs in the array using a hash table
integers ...
0
The problem: I want to display a row of rectangles placed shoulder to shoulder, on a grid page (think graph paper). The width of the page where the rectangles appear will be an unknown integer variable (but always greater than 100).  The height of the rectangles will be a constant integer value (e.g., 20 units high). I want to fill a row on this page with as many rectangles as possible where the rectangle width will be equal or greater than the predefined rectangle height and where there will be no gap/margin at the end of the row.

I realize that this is only possible when the page width (e.g. 200)  can be evenly divided by the rectangle height (e.g., 200 / 20).  If the page width is 201, it is impossible to have rectangles all with the same width and at the same time have no gap/margin at the end of the row of rectangles. But if the page width is 210, I can fit 10 rectangles which are 21 units wide. That's fine. I don't mind stretching the rectangles a bit, as long as the rectangle width is never less than the predefined rectangle height constant (in this example, is 20). So, if the page width is 220, that works fine for I can get 10 rectangles of 22 units across the page with no gap/margin at the end of the row. I don't mind the rectangle width growing a bit so as to ensure no right margin/gap results. But there would be a limit to the rectangle width changing from its original desired width (which is equal to the rectangle height constant).  So I would need the …
0
How to disable disable any 96-bit hmac algorithms in centos
0
Enroll in July's Course of the Month
LVL 9
Enroll in July's Course of the Month

July's Course of the Month is now available! Enroll to learn HTML5 and prepare for certification. It's free for Premium Members, Team Accounts, and Qualified Experts.

I have an array that will have approx 3000 elements. Within each element is an array that contains two key:value pairs. I want to sort the elements of the outer array based on the value of the first key:value pairs within each element.

e.g.
array = [{"key1":"group9","key2":["20170222","20170531"]},{"key1":"group3","key2":["20170221"]},{"key1":"group7","key2":["20170321"]}, ..................]

so sorting gives e.g. (the elements are arranged based on sorting the groupX value of key key1 i.e. the first key:value pair)

array = [{"key1":"group3","key2":["20170221"]} ,{"key1":"group7","key2":["20170321"]} ,{"key1":"group9","key2":["20170222","20170531"]},................................]


I've implemented a merge sort and it works fine. But I want to look at what is the most efficient algorithm to use, as my colleagues have suggested bubble sort (I thought this was one of the worst algorithms, but it really depends on how large the dataset is).

Can anyone advise?

I'll (learn to) implement this on a webpage so I'm using Javascript/JQuery/ReactJS
0
I know that a circle has 360 degrees and Pi has a very specific an known value.

The question is, must a circle had 360 degrees? Or was that a decision that was made so each quarter would have 90 degrees?

So, was Pi "backed into"?

If Euclid had wanted a circle to be 400 degrees, could he have simply used a different formula to generate Pi?

Curious.

And what is that formula to generate Pi, if you have it.

Thanks
0
Hello,
I need some help with this code. It works for some Arrays but not for all. Do you see a mistake in the code?

These are the failures of 13 different tests:
  There were 3 failures:
  1) test3(ads.set2.knapsack.test.EfficientKnapsackTest)
  java.lang.AssertionError: Checking optimal profit:  expected:<3144> but was:<2660>
  ?at ads.set2.knapsack.test.EfficientKnapsackTest.performTests(EfficientKnapsackTest.java:157)
  ?at ads.set2.knapsack.test.EfficientKnapsackTest.test3(EfficientKnapsackTest.java:69)
  2) test4(ads.set2.knapsack.test.EfficientKnapsackTest)
  java.lang.AssertionError: Checking optimal profit:  expected:<76> but was:<72>
  ?at ads.set2.knapsack.test.EfficientKnapsackTest.performTests(EfficientKnapsackTest.java:157)
  ?at ads.set2.knapsack.test.EfficientKnapsackTest.test4(EfficientKnapsackTest.java:74)
  3) test8(ads.set2.knapsack.test.EfficientKnapsackTest)
  org.junit.runners.model.TestTimedOutException: test timed out after 300 milliseconds

  FAILURES!!!
  Tests run: 13,  Failures: 3



public class KnapsackSolver {

	/**
	 * Calculates the maximum profit for the knapsack problem using 
	 * an improved dynamic programming algorithm
	 * 
	 * @param items
	 *            the items available to be packed into the knapsack.
	 * @param capacity
	 *            the maximum weight allowed for the knapsack.
	 * @return the maximum profit possible for the given weight
	 */
	public static int pack(final Item[] items, final int 

Open in new window

0
I have used Python, Natural Language Processing and web scraping technology to do some deep mining of Google's vast warehouses of articles on the web.

Is what I described considered artificial intelligence?

Or, in order to satisfy the requirement of AI must that model also automatically adjust it's algorithms based on the results of the searches? In my case, the adjustments were manual.

Curious.

Thanks.
1
Here's an interesting coding puzzle:

A trader can perform two buys and two sells in a day of a given stock. An array of positive integers represents the share price of this stock at different times of the day (index i = 0 represents hour 1, i=1 represents hour 2, etc). The trader must always sell any current shares he has before he buys more shares. Write a function that determines the maximum profit the trader can make by buying and selling stock for a given day.

int maximizeProfit(int[] prices) {
   // Your code here
}

ex:
[10, 22, 5, 75, 65, 80]
The maximum profit is 87: buy at 10 sell at 22, buy at 5, sell at 80.

Open in new window


The solution should have time complexity O(n).
2
I have a trading system that is about 40% right. That means 4/10 signals generated by it yield in profit and the remaining 6 result in loss. Can I use neural networks/AI/Deep-learning to improve the chances? Can neural networks be used, in this case, to filter-out the bad trades in advance such that the trading system produces 60% good trades?
0
Examples of Enumerating Permutations and Combinations
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below.

https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt
https://filedb.experts-exchange.com/incoming/2017/03_w12/1152429/Combinations.txt
https://filedb.experts-exchange.com/incoming/2017/03_w12/1152430/Perms-Combs.xlsm

1. I've attached the XLSM Excel spreadsheet I used in the video

Please use the example files I have attached.Permutations.txt
Combinations.txt
Perms-Combs.xlsm
1
If you're interested in block chains (as used in bit coin and now for many other purposes) I found this to be a very good primer.
6
I'm creating an Avl tree to sort information about some countries. I want each node to be a list with 2 parameters being the name of the country the first and the information specific to the country  the second. Is it possible the second parameter of the node to be another avl tree?

Thanks.
0
Ready to get started with anonymous questions?
LVL 9
Ready to get started with anonymous questions?

It's easy! Check out this step-by-step guide for asking an anonymous question on Experts Exchange.

I've been really interested in recommendation systems lately which has lead my down a few rabbit holes. One of these landed on a similarity measurement called Jaccard similarity which is a fairly straightforward metric for communicating how many elements two sets have in common.

This turns out to be very difficult to compute without some tricks but can be estimated with a certain degree of confidence using minHashing. If this sort of thing interests you I would check out this blog post by Chris McCormick - its one of the best explanations I came across (even though its in the context of document similarity). There is even some python code provided.

I would summarize the technique in one sentence as: by randomly shuffling the union of two sets and looking at the first element in the new, shuffled set, the probability that it is an item belonging to their intersection is equal to the Jaccard Similarity.

http://mccormickml.com/2015/06/12/minhash-tutorial-with-python-code/
5
I have some written material that I need to organize. The material is in separate documents. I would like some (easy, non-complicated) automated method that could parse the documents into some sensible format. Initially, I need a table of contents for a writing project I'm involved in. Can a table of contents be generated from separate documents? Is there a way to cluster/classify the text? Neural Network text analysis seems like overkill. Mind Mapping also seems like a lot of work. Maybe MS Word? I can merge the documents into one document if that would help. Any ideas appreciated and points awarded for workable solutions. Thanks.
0
Here goes the code, and the compiler shows the warning : qmain.c:49:20: error: expected ‘;’, ‘,’ or ‘)’ before ‘.’ token
 void qdelete(int* q.front, int* q.rear)


#include<stdio.h>
#include<stdlib.h>
#define size 50

typedef struct queue
{
int a[size];
int front;
int rear;
}ob;

ob q;

void qdelete(int*, int*); 

void insert ()
{
int ele;

printf("\nEnter the element to be inserted:\t");
scanf("%d", &ele);

if((q.rear+1)%size==q.front)
			// same as this : if((q.front==0)&&(q.rear=size-1)||(q.rear+1==q.front))
{
printf("\nQUEUE IS FULL !!\nNo more elements can be inserted.");
return;
}

else
	{
	if(q.rear==size-1)
		q.rear=0;
	else
		q.rear++;
	}
	q.a[q.rear]= ele;
		
	if(q.front==-1)
		{
		q.front=0;
		printf("%d rear = %d front is the first element of the queue.", q.a[q.rear], q.a[q.front]);
		}
	
	printf("\n%d Inserted",q.a[q.rear]);
}


void qdelete(int* q.front, int* q.rear)
{
if(q.front==-1)
	{
	printf("\nQueue empty");
	return;
	}
	
else
	{
		printf("\nElement output %d", q.a[q.front] );
	
		if(q.front==q.rear)
			{
			q.front=-1;
			q.rear=-1;
			}
		else
		{	
		q.front==(q.front+1)%size;

					/*	same as this: 
					if(q.front==size-1)
							q.front=0;
						else
							q.front++;	*/
		}
		printf("\nDeleted");
	}
}

void display ()
{
int i=q.front, j=q.rear;
printf("\nDISPLAY:\t");

while(i!=j)
{
printf(" %d ", q.a[i++]);
}

printf (" %d", q.a[i]);
printf("\n");
}


void main()
{
int choice;
q.front = -1;
q.rear = -1;

while(1)

	{
	

Open in new window

0
I am building a backups application in which I want to know the files that have been Added/modified/Renamed/Deleted.
I am trying out the ReadDirectoryChangesW() Windows API. I created two files TestNewFile.xlsx and TestNewTextFile.txt.

I get so many notifications, How can I get a workable result ?
Is there some Algorithm to manage these ?

I use Delphi with SQL Lite catering to all Windows OS

Results while Creating Excel File

waAdded   TestNewFile.xlsx
waRemoved   TestNewFile.xlsx
waAdded   ~$TestNewFile.xlsx
waModified   ~$TestNewFile.xlsx
waModified   ~$TestNewFile.xlsx
waAdded   90A4C000
waModified   90A4C000
waModified   90A4C000
waModified   90A4C000
waModified   90A4C000
waModified   90A4C000
waModified   90A4C000
waRenamedOld   90A4C000
waRenamedNew   TestNewFile.xlsx
waModified   TestNewFile.xlsx

Open in new window


Results while Creating Notepad File

waAdded   TestNewTextFile.txt
waRemoved   TestNewTextFile.txt
waAdded   TestNewTextFile.txt
waModified   TestNewTextFile.txt
waModified   TestNewTextFile.txt

Open in new window



Other Results that keep coming on their own or while using Windows Explorer.

waModified   Users\SS Smith\ntuser.dat.LOG1
waModified   Users\SS Smith\NTUSER.DAT
waAdded   Windows\Prefetch\TASKMGR.EXE-5F5F473D.pf
waModified   Windows\Prefetch
waModified   Users\SS Smith\AppData\Local\Microsoft\Windows\UsrClass.dat.LOG1
waModified   Users\SS Smith\AppData\Local\Microsoft\Windows\UsrClass.dat
waModified   Windows\Prefetch\DLLHOST.EXE-5E46FA0D.pf
waModified   Windows\System32\wbem\Repository\OBJECTS.DATA
waModified   Windows\System32\wbem\Repository\INDEX.BTR
waModified   Windows\System32\wbem\Repository\MAPPING2.MAP
waModified   Windows\Prefetch\AVWSC.EXE-327FD431.pf

Open in new window

0
Anyone know of a relatively straightforward algorithm for computing the numbers of ones and zeroes in an arbitrary string such that, we could address the function thus

Number_of_Ones=bitcount(arbitrary_string,1)
Number_of_Zeroes=bitcount(arbitrary_string,0)
0
Assuming a given time for sunrise or sunset at sea level, what adjustment have to be made to those times for a given altitude (i.e. 2400 feet).
0

Algorithms

An algorithm is a self-contained step-by-step set of operations to be performed. Algorithms exist that perform calculation, data processing, and automated reasoning. Starting from an initial state and initial input (perhaps empty), the instructions describe a computation that, when executed, proceeds through a finite number of well-defined successive states, eventually producing "output" and terminating at a final ending state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as randomized algorithms, incorporate random input.