Guest User

Untitled

a guest
Nov 21st, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.83 KB | None | 0 0
  1. function deriveorder(m)
  2. out = String[]
  3. while length(m) > 0
  4. # find the right value for x
  5. lenarr = Vector{String}(length(m))
  6. for (k, v) in m
  7. len = length(v)
  8. lenarr[len] = k
  9. end
  10. x = m[lenarr[1]] # x is equal to the element present in all arrays
  11. append!(out, x)
  12. for (k, v) in m # iterate through all arrays in m
  13. for (i, j) in enumerate(v) # iterate through elements in arrays
  14. if [j] == x
  15. global xind = i # store index whose element is equal to x
  16. end
  17. end
  18. deleteat!(m[k], xind) # delete element equal to x in array k
  19. if length(m[k]) == 0 # if k is an empty array, delete it from m
  20. delete!(m, k)
  21. end
  22. end
  23. end
  24. return out
  25. end
Add Comment
Please, Sign In to add comment