You should do a live stream where we can tell you which problem to solve, and you have to solve it right in front of us without preparation. This way, we can see/hear your micro-thoughts, and we can understand how you got to the solution in its entirety.
Its crazy.. your tech with tim.. i have an interview tomorrow.. my very first one since exiting my bootcamp 2 weeks ago. Seeing you make errors is daunting. Its humbling knowing we human.
Tim, your videos have helped me gain so much software development knowledge and have helped me build a website, 2D multiplayer game, and more. Thank you for all you do!
I used index slicing for the rotations. If you do a return value for [-k:] which grabs the relevant end of the list starting with [3], in this case it will be [3,4,5], and [:-k] which grabs the relevant beginning of the list ending with but not including [3], in this case it will be [1,2], when added together you get the resulting rotated list and it is pretty elegant. def rotlist(head,k): k = k % len(head) return head[-k:] + head[:-k] head = [1,2,3,4,5] k = 3 rotated_list = rotlist(head,k) print(rotated_list)
This was my thought as well while I was watching. I wasn't sure if he got caught up on the word rotate, or if that was an actual requirement of the problem
I just watched “how to practice coding so you can get good” from a month ago, then you release this literally as I’m watching the other video. Thank you so much for your time, resources, and diligence to posting for us.
The problem of being good at programming has never been a lack of resources. Even if there was a stop on new content on the Internet, to consume the already free resources available ones would need a couple of lifetimes. The problem is, are people matching their natural skills with the industry/job or just going for the trend/what seems cool/profitable or fun. In case of the second, the struggle would be more then hard and never ending, cause they are not starting from a position of strength.
Hi Tim, thank you for explanation. I tried to solve this by myslef(I´am currently learning) and I solved it this way: list = [1,2,3,4,5] n = list[4] k = int(input()) for n in range(0,k): m = list.pop(4) list.insert(0, m) print(list) it looks its working ( you can replace "n" with list [-1] if list is generated randomly/ or by input as well as for list.pop(-1)) Thank you for any tips
Here is a suggestion. If you used a while loop and subtracted k by 1 in each loop instead of using a for loop and range function, your code would be more efficient.
ChatGPT solved the problem for me in just five seconds, leading to it landing the job. During the interview, the interviewer placed a gun on the table and said, 'To prove you're a true programmer, show me your dedication by shooting yourself in the foot!' It was a dramatic and surreal test of commitment.
I am taking CS50, Introduction to Programming with Python. Sometimes, when I try to solve problems, I can't figure them out. I might understand the logic, I know what to do , but struggle with implementing it. After attempting to solve the problem myself, I eventually have to look at the solution. When I do, I understand it. Does this mean I'm a bad programmer, or that programming isn't for me?
It means you are not solving enough problems. All problems should have some patterns and techniques to solve especially in the field of dsa. And the best way to know about these patterns is to learn from solutions. I mean learn here is to completely understand the solution and can re-implement the solution without looking at it, then try to play with the solution a little bit. Playing here means you remove some lines from the solution and then see what happens try to understand why it happens. You do that again and again and again in the long time consistently then you will come to a point where you can figure out the pattern and solve a question your self
Practice is all there is to improve your problem solving. You might not have a briliant mind but with practice you can at least moving forward day after day to become better. Thats the only way for us normal folks. Good luck on your journey and stay strong
not being able to solve problems on a beginner course is certainly not a good thing. You might want to hear encouragement, but to answer your question honestly, my answer is simple: Yes. Using your time trying something else that you are better at, might open you real opportunities, instead of perusing a dream forever
Man, you just answered yourself. If you understand the logic, you've already solved 90% of the problem. Keep going, solve more problems, that's the key
Is there anything wrong with a pop and insert loop? def rotate(head, k): for i in range(k): head.insert(0, nums[-1]) head.pop(-1) This works for me, but I don't know anything about LeetCode.
This works for a standard python list, but what if the linked list you're working with doesn't have insert and pop methods defined? I think the point is for you to demonstrate understanding of how to directly manipulate nodes in a linked list without relying on built-in functionality.
@thepaperbowser Just force it into an list with iteration and the .Val attribute. Then do that code on the list, iterate through the linked list again and just replace all the values with the values in the list. But also, pretty sure they want O(1) space complexity, not O(n). So not recommended.
If you want to land a developer job check out my program with CourseCareers: techwithtim.net/dev
You should do a live stream where we can tell you which problem to solve, and you have to solve it right in front of us without preparation. This way, we can see/hear your micro-thoughts, and we can understand how you got to the solution in its entirety.
Its crazy.. your tech with tim.. i have an interview tomorrow.. my very first one since exiting my bootcamp 2 weeks ago. Seeing you make errors is daunting. Its humbling knowing we human.
Tim, your videos have helped me gain so much software development knowledge and have helped me build a website, 2D multiplayer game, and more. Thank you for all you do!
I used index slicing for the rotations.
If you do a return value for [-k:] which grabs the relevant end of the list starting with [3],
in this case it will be [3,4,5],
and [:-k] which grabs the relevant beginning of the list ending with but not including [3],
in this case it will be [1,2],
when added together you get the resulting rotated list and it is pretty elegant.
def rotlist(head,k):
k = k % len(head)
return head[-k:] + head[:-k]
head = [1,2,3,4,5]
k = 3
rotated_list = rotlist(head,k)
print(rotated_list)
This was my thought as well while I was watching. I wasn't sure if he got caught up on the word rotate, or if that was an actual requirement of the problem
Tim, I have been watching you since 2018 or 2017, the amount of success you received and helped me receive has been crazy, thankyou!
Man you never fail to amaze me!
Right on time when I needed to prepare for DSA ❤
I just watched “how to practice coding so you can get good” from a month ago, then you release this literally as I’m watching the other video.
Thank you so much for your time, resources, and diligence to posting for us.
Generalizing Polya's approach to problem solving from mathematics to anything is the way to go.
Thanks Tim. I got so much inspiration from you.
The problem of being good at programming has never been a lack of resources. Even if there was a stop on new content on the Internet, to consume the already free resources available ones would need a couple of lifetimes. The problem is, are people matching their natural skills with the industry/job or just going for the trend/what seems cool/profitable or fun. In case of the second, the struggle would be more then hard and never ending, cause they are not starting from a position of strength.
Hi Tim,
thank you for explanation. I tried to solve this by myslef(I´am currently learning) and I solved it this way:
list = [1,2,3,4,5]
n = list[4]
k = int(input())
for n in range(0,k):
m = list.pop(4)
list.insert(0, m)
print(list)
it looks its working ( you can replace "n" with list [-1] if list is generated randomly/ or by input as well as for list.pop(-1))
Thank you for any tips
Here is a suggestion. If you used a while loop and subtracted k by 1 in each loop instead of using a for loop and range function, your code would be more efficient.
ChatGPT solved the problem for me in just five seconds, leading to it landing the job. During the interview, the interviewer placed a gun on the table and said, 'To prove you're a true programmer, show me your dedication by shooting yourself in the foot!' It was a dramatic and surreal test of commitment.
More videos like this please !
I learnt a lot from your videos🎉
Can this be a series please?
Hitting the gym, Tim? Looking good 👍
Nice work Tim💯💯...More content on intercepting Django+React+Djangorestframework please...
Great explanation but shouldn’t the order at 13:58 be 2-3-1 instead of 3-2-1?
Yes I believe I added a correction on screen
@@TechWithTimTotally missed that, never mind then. Great job!
its really funny to see youo grow up
I am taking CS50, Introduction to Programming with Python. Sometimes, when I try to solve problems, I can't figure them out. I might understand the logic, I know what to do , but struggle with implementing it. After attempting to solve the problem myself, I eventually have to look at the solution. When I do, I understand it. Does this mean I'm a bad programmer, or that programming isn't for me?
It means you are not solving enough problems. All problems should have some patterns and techniques to solve especially in the field of dsa. And the best way to know about these patterns is to learn from solutions. I mean learn here is to completely understand the solution and can re-implement the solution without looking at it, then try to play with the solution a little bit. Playing here means you remove some lines from the solution and then see what happens try to understand why it happens. You do that again and again and again in the long time consistently then you will come to a point where you can figure out the pattern and solve a question your self
Practice is all there is to improve your problem solving. You might not have a briliant mind but with practice you can at least moving forward day after day to become better. Thats the only way for us normal folks. Good luck on your journey and stay strong
@@phongtranquoc7557 Thanks man
not being able to solve problems on a beginner course is certainly not a good thing. You might want to hear encouragement, but to answer your question honestly, my answer is simple: Yes. Using your time trying something else that you are better at, might open you real opportunities, instead of perusing a dream forever
Man, you just answered yourself. If you understand the logic, you've already solved 90% of the problem. Keep going, solve more problems, that's the key
Excellent 👍
Is there anything wrong with a pop and insert loop?
def rotate(head, k):
for i in range(k):
head.insert(0, nums[-1])
head.pop(-1)
This works for me, but I don't know anything about LeetCode.
This works for a standard python list, but what if the linked list you're working with doesn't have insert and pop methods defined? I think the point is for you to demonstrate understanding of how to directly manipulate nodes in a linked list without relying on built-in functionality.
@@thepaperbowser ah that makes sense! Thanks!
@thepaperbowser Just force it into an list with iteration and the .Val attribute. Then do that code on the list, iterate through the linked list again and just replace all the values with the values in the list.
But also, pretty sure they want O(1) space complexity, not O(n). So not recommended.
Note you can just make the pop and insert methods of a linked list yourself.
Thanks 😊
please make DSA course
More Golang and C# videos.
Hehe tim getting that sun tan
0:06 "problem sovling"
Problem Solving.
I started doing programming projects with high programming, ❗Python❗, I hope you will see them and give me your opinion☝️🤗
First Viewer 🎉
More videos like this please !