The following content is provided under a Creative
Commons license.
Your support will help MIT OpenCourseWare
continue to offer high quality educational resources for free.
To make a donation or view additional materials
from hundreds of MIT courses, visit MIT OpenCourseWare
at ocw.mit.edu.
PROFESSOR: We have two strings, s1, s2.
First, we're going to check if the length of s1
is equal length 2.
Anyone, really quickly can you tell me what
is the length of s1 and s2?
How many characters are in there?
10 right, because we're including spaces.
So 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
so they are equal, first of all.
So we're going to go inside this if statement.
Then we're going to go for every character in s1.
And then we're going to have a nested loop.
For every character in s2, we're going
to check if the two characters are the same, and if they are,
we're going to print this common letter statement
and then we're going to break.
OK.
Great we have some good competition here.
So let's see.
The outer for loop is first going
to go through the letter M. So this
is-- so first it's going to look at M, right.
For char in s1, the first character in s1 is an M.
Then we're entering inside this other for loop.
For char 2 in s2.
So I'm going to say for this M, I'm
going to look at I, which is the first character in s2.
If the character 1 is equal to character 2, they're not,
don't do anything.
Keep going to the next character in s2.
So that-- you don't do anything there.
The next character in s2 is a space,
M does not equal a space so you don't do anything.
R does not-- the next character is an R, don't do anything.
The next character is a U, don't do anything.
Then an L, don't do anything.
Then an E, don't do anything.
Space.
And then suddenly we get to an M.
So we're still in the outer for loop, we're still looking at M,
and we're comparing M with every other letter inside the s2.
And suddenly we reach here where we're comparing M with an M
and when we say yes, they are equal.
So we're going to print out something.
Make that into a better check.
We're going to print common letter
and then we're going to break.
This break says do not keep looking
at the remaining letters in s2.
So once we've found one that fits--
once we found one the matches, stop right here,
break, and print out the thing, and then go on to looking at I,
which is the next letter in s1.
And you do the same thing, compare I with I,
we have a match.
Perfect, right off the bat.
So you print out another common letter.
And then you break, which means don't keep looking
at the remaining letters.
And then you look at-- since you broke out of the inner loop,
you go to the outer loop.
The next letter is a T and so on and so on.
So essentially you're comparing every letter out here in s1
with every single letter in s2 until you
find one that matches.
As soon as you do, you exit.
So if you actually run this program
it's going to print out seven times, I think.
We can check it.
1, 2, 3, 4, 5, 6, 7 times.
Nice.
The majority of the people are right.
If you got this wrong, please go back and try
to trace through your program.
That means step by step try to figure out
what values of variables are just
to make sure that you're on the right track
and you understand exactly what's happening.
OK.