Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Branches - Erika #41

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

Branches - Erika #41

wants to merge 4 commits into from

Conversation

emaust
Copy link

@emaust emaust commented Dec 10, 2019

Linked List Comprehension Questions

Question Response
1. What advantages does a LinkedList have over an Array? You are able to store non-contiguous memory in a linked list so you can add elements whenever you need to rather than only having an allotted section of memory
2. When is an Array more advantageous? If you want to regularly access information at an index
3. When is an Array more advantageous? I'm going to assume this should be linked list, and they are more advantageous when you don't need contiguous memory space

Copy link

@CheezItMan CheezItMan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You definitely have a feel for linked lists, but you have a few bugs here. Take a look at my comments and let me know if you have questions.

Also you should look at the time/space complexities of the methods. It will help you identify when a linked list is more or less optimal a choice.

@@ -10,36 +10,75 @@ def initialize
# Time complexity - ?
# Space complexity - ?
def add_first(data)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

curr = curr.next
end
return curr.data
end
end

# Time complexity - ?
# Space complexity - ?
def get_at_index(index)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about if the index is greater than the length of the list?

end

# Time complexity - ?
# Space complexity - ?
def get_last

curr = @head

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What if head is nil?

Suggested change
curr = @head
return nil if @head.nil?
curr = @head

count += 1
curr = curr.next
end
return count
end

# Time complexity - ?
# Space complexity - ?
def add_last(data)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Comment on lines 10 to 11
# Time complexity - ?
# Space complexity - ?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No guesses on time/space complexity?

@@ -10,36 +10,75 @@ def initialize
# Time complexity - ?
# Space complexity - ?
def add_first(data)

@head = Node.new(data, @head)
end

# Time complexity - ?
# Space complexity - ?
def get_first

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

return nil
else
return @head.data
end
end

# Time complexity - ?
# Space complexity - ?
def length

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants