Servo Sweep not working

I'm new so don't hate on my lack of Arduino knowledge xD
I'm using an Arduino Uno with a RadioShack standard servo, but when I run the sweep program, it shuts off the Arduino and then turns it on and then moves the servo the right a little bit, then keeps shutting off and moving a little, then so forth. Once it has reached the end of its rotation point, it just keeps twitching there. After some research, I realized I needed an external power supply, so when I connect it to the power, it just moves once a tiny bit, say 10 degrees, and stops. If I want it to move again, I need to turn the power source on and off. The servo is functional, since I tried it with the "Knob" program with a potentiometer, and it works, it's just that the "Sweep" program isn't working. Here's "Sweep"

/* Sweep
 by BARRAGAN <http://barraganstudio.com>
 This example code is in the public domain.

 modified 8 Nov 2013
 by Scott Fitzgerald
 http://www.arduino.cc/en/Tutorial/Sweep
*/

#include <Servo.h>

Servo myservo;  // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0;    // variable to store the servo position

void setup() {
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
    // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}

and here's my schematic:

Your diagram does not show the required ground connection between the Arduino and the servo power supply.

In the future, please just post a hand drawn schematic. Fritzing diagrams are worthless.