From 435840cef00c596d9e608f9eb2d96f522ea8505a Mon Sep 17 00:00:00 2001
From: hardythe1
Date: Tue, 5 May 2015 14:21:39 +0530
Subject: add books

---
 sample_notebooks/VikasPrasad/Chapter_01.ipynb   | 170 ++++++++++++++++++++++++
 sample_notebooks/VikasPrasad/Chapter_01_1.ipynb | 170 ++++++++++++++++++++++++
 sample_notebooks/VikasPrasad/Chapter_01_2.ipynb | 170 ++++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_2.ipynb   | 165 +++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_3.ipynb   | 165 +++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_4.ipynb   | 165 +++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_5.ipynb   | 165 +++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_6.ipynb   | 165 +++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_7.ipynb   | 165 +++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_8.ipynb   | 170 ++++++++++++++++++++++++
 sample_notebooks/VikasPrasad/chapter1_9.ipynb   | 170 ++++++++++++++++++++++++
 11 files changed, 1840 insertions(+)
 create mode 100755 sample_notebooks/VikasPrasad/Chapter_01.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/Chapter_01_1.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/Chapter_01_2.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_2.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_3.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_4.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_5.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_6.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_7.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_8.ipynb
 create mode 100755 sample_notebooks/VikasPrasad/chapter1_9.ipynb

(limited to 'sample_notebooks/VikasPrasad')

diff --git a/sample_notebooks/VikasPrasad/Chapter_01.ipynb b/sample_notebooks/VikasPrasad/Chapter_01.ipynb
new file mode 100755
index 00000000..b5226e07
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/Chapter_01.ipynb
@@ -0,0 +1,170 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "    \n",
+      "\t#since private instance variables don't exist in Python,\n",
+      "    #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "    \n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to create objects\n",
+      "        #with instances customized to a specific initial state\n",
+      "\t\t\n",
+      "        #since private instance variables don't exist in Python,\n",
+      "        #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "        \n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/Chapter_01_1.ipynb b/sample_notebooks/VikasPrasad/Chapter_01_1.ipynb
new file mode 100755
index 00000000..b5226e07
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/Chapter_01_1.ipynb
@@ -0,0 +1,170 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "    \n",
+      "\t#since private instance variables don't exist in Python,\n",
+      "    #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "    \n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to create objects\n",
+      "        #with instances customized to a specific initial state\n",
+      "\t\t\n",
+      "        #since private instance variables don't exist in Python,\n",
+      "        #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "        \n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/Chapter_01_2.ipynb b/sample_notebooks/VikasPrasad/Chapter_01_2.ipynb
new file mode 100755
index 00000000..b5226e07
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/Chapter_01_2.ipynb
@@ -0,0 +1,170 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "    \n",
+      "\t#since private instance variables don't exist in Python,\n",
+      "    #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "    \n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to create objects\n",
+      "        #with instances customized to a specific initial state\n",
+      "\t\t\n",
+      "        #since private instance variables don't exist in Python,\n",
+      "        #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "        \n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_2.ipynb b/sample_notebooks/VikasPrasad/chapter1_2.ipynb
new file mode 100755
index 00000000..eca44a51
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_2.ipynb
@@ -0,0 +1,165 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t#to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to cerate objects with instances customized to a specific initial state\n",
+      "\t\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t\t#to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_3.ipynb b/sample_notebooks/VikasPrasad/chapter1_3.ipynb
new file mode 100755
index 00000000..eca44a51
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_3.ipynb
@@ -0,0 +1,165 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t#to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to cerate objects with instances customized to a specific initial state\n",
+      "\t\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t\t#to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_4.ipynb b/sample_notebooks/VikasPrasad/chapter1_4.ipynb
new file mode 100755
index 00000000..eca44a51
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_4.ipynb
@@ -0,0 +1,165 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t#to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to cerate objects with instances customized to a specific initial state\n",
+      "\t\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t\t#to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_5.ipynb b/sample_notebooks/VikasPrasad/chapter1_5.ipynb
new file mode 100755
index 00000000..eca44a51
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_5.ipynb
@@ -0,0 +1,165 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t#to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to cerate objects with instances customized to a specific initial state\n",
+      "\t\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t\t#to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_6.ipynb b/sample_notebooks/VikasPrasad/chapter1_6.ipynb
new file mode 100755
index 00000000..eca44a51
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_6.ipynb
@@ -0,0 +1,165 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t#to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to cerate objects with instances customized to a specific initial state\n",
+      "\t\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t\t#to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_7.ipynb b/sample_notebooks/VikasPrasad/chapter1_7.ipynb
new file mode 100755
index 00000000..eca44a51
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_7.ipynb
@@ -0,0 +1,165 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t#to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to cerate objects with instances customized to a specific initial state\n",
+      "\t\t#since private instance variables don't exist in Python, hence using a convention: name prefixed with an underscore,\n",
+      "\t\t#to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_8.ipynb b/sample_notebooks/VikasPrasad/chapter1_8.ipynb
new file mode 100755
index 00000000..b5226e07
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_8.ipynb
@@ -0,0 +1,170 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "    \n",
+      "\t#since private instance variables don't exist in Python,\n",
+      "    #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "    \n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to create objects\n",
+      "        #with instances customized to a specific initial state\n",
+      "\t\t\n",
+      "        #since private instance variables don't exist in Python,\n",
+      "        #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "        \n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
diff --git a/sample_notebooks/VikasPrasad/chapter1_9.ipynb b/sample_notebooks/VikasPrasad/chapter1_9.ipynb
new file mode 100755
index 00000000..b5226e07
--- /dev/null
+++ b/sample_notebooks/VikasPrasad/chapter1_9.ipynb
@@ -0,0 +1,170 @@
+{
+ "metadata": {
+  "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+  {
+   "cells": [
+    {
+     "cell_type": "heading",
+     "level": 1,
+     "metadata": {},
+     "source": [
+      "1: Overview of Data Structures and Algorithms"
+     ]
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 1: Page 20"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "class Thermostat:\n",
+      "\t\"\"\"A simple thermostat class\"\"\"\n",
+      "    \n",
+      "\t#since private instance variables don't exist in Python,\n",
+      "    #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t_currentTemp = 0.0\n",
+      "\t_desiredTemp = 0.0\n",
+      "\n",
+      "\tdef furnace_on(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "\n",
+      "\tdef furnace_off(self):\n",
+      "\t\t#method body goes here\n",
+      "\t\tpass\n",
+      "    \n",
+      "#end class Thermostat"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [],
+     "prompt_number": 1
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 2: Page 22"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#demonstrates basic OOP syntax\n",
+      "\n",
+      "class BankAccount:\n",
+      "\t\"\"\"A simple bank account class\"\"\"\n",
+      "\t\n",
+      "\tdef __init__(self, openingBalance):\t#special method to create objects\n",
+      "        #with instances customized to a specific initial state\n",
+      "\t\t\n",
+      "        #since private instance variables don't exist in Python,\n",
+      "        #hence using a convention: name prefixed with an underscore, to treat them as non-public part\n",
+      "\t    self._balance = openingBalance\t#account balance\n",
+      "\n",
+      "\tdef deposit(self, amount):\t#makes deposit\n",
+      "\t\tself._balance = self._balance + amount\n",
+      "\n",
+      "\tdef withdraw(self, amount):\t#makes withdrawl\n",
+      "\t\tself._balance = self._balance - amount\n",
+      "\n",
+      "\tdef display(self):\t#displays balance\n",
+      "\t\tprint 'Balance=', self._balance\n",
+      "        \n",
+      "#end class BankAccount\n",
+      "\n",
+      "ba1 = BankAccount(100.00)\t#create account\n",
+      "\n",
+      "print 'Before transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "\n",
+      "ba1.deposit(74.35)\t#make deposit\n",
+      "ba1.withdraw(20.00)\t#make withdrawl\n",
+      "\n",
+      "print 'After transactions, ',\n",
+      "ba1.display()\t#display balance\n",
+      "#end"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "Before transactions,  Balance= 100.0\n",
+        "After transactions,  Balance= 154.35\n"
+       ]
+      }
+     ],
+     "prompt_number": 2
+    },
+    {
+     "cell_type": "heading",
+     "level": 2,
+     "metadata": {},
+     "source": [
+      "Example 3: Page 25"
+     ]
+    },
+    {
+     "cell_type": "code",
+     "collapsed": false,
+     "input": [
+      "#creating string objects\n",
+      "str1 = ''\n",
+      "str2 = 'George'\n",
+      "\n",
+      "#verifying results\n",
+      "print str1\n",
+      "print str2\n",
+      "\n",
+      "#naming string object\n",
+      "str3 = 'amanuensis'\n",
+      "\n",
+      "#verifying results\n",
+      "print str3\n",
+      "\n",
+      "#accessing specific characters from string using [] operator\n",
+      "ch1 = str2[3]\n",
+      "\n",
+      "#verifying results\n",
+      "print ch1\n",
+      "\n",
+      "#finding and printing number of characters in a string\n",
+      "print len(str1)"
+     ],
+     "language": "python",
+     "metadata": {},
+     "outputs": [
+      {
+       "output_type": "stream",
+       "stream": "stdout",
+       "text": [
+        "\n",
+        "George\n",
+        "amanuensis\n",
+        "r\n",
+        "0\n"
+       ]
+      }
+     ],
+     "prompt_number": 3
+    }
+   ],
+   "metadata": {}
+  }
+ ]
+}
\ No newline at end of file
-- 
cgit