Namika's blog

By Namika, history, 6 days ago, In English

i was solving this problem and i noticed that when i create a frequency array of sorted list its much faster than doing it on a unsorted list

this is my submession with sorted, when i submit the same code without sorting it gives TL.

then i noticed that when i loop on a sorted list is much faster than looping on a unsorted list with the same elements

`

import time import random

x = [] counter =1 a = 0 for i in range(10**6):

x.append(counter)

a+=1

if a == 2:

    a=0

    counter +=1

x = random.sample(x,len(x))

now = time.time()

freq1 = {}

for i in x:pass

print("done 1")

print(time.time() — now)

print("-----------")

x = sorted(x)

now = time.time()

freq1 = {}

for i in x:pass

print("done 2")

print(time.time() — now) ~~~~~

` ~~~~~

it prints

done 1

0.16895198822021484

done 2

0.012014389038085938

the first number is the time of looping on the list while its unsorted and the second one is the time after sorting

can any one explain why this happens

Full text and comments »

  • Vote: I like it
  • -2
  • Vote: I do not like it

By Namika, history, 3 months ago, In English

Sometimes, I solve a problem without understanding how the solution worked, and I can't prove that it's correct. Is that normal? I don't feel like I understand what I did In The Code

Full text and comments »

  • Vote: I like it
  • +13
  • Vote: I do not like it

By Namika, history, 3 months ago, In English

Sometimes i open the tutorial and i understand nothing and i feel like i will be stuck in this problem for the rest of life, what should i do to avoid this?

Full text and comments »

  • Vote: I like it
  • +3
  • Vote: I do not like it

By Namika, history, 6 months ago, In English

How can I learn concepts that I don't even know exist?

Is it through trying to solve problems and searching for the solution or should I try to learn all the concepts and keep searching?

Full text and comments »

  • Vote: I like it
  • +2
  • Vote: I do not like it