Hacking a Google Interview Handout 3

Size: px
Start display at page:

Download "Hacking a Google Interview Handout 3"

Transcription

1 HackingaGoogleInterview Handout3 CourseDescription Instructors:BillJacobsandCurtisFonger Time:January12 15,5:00 6:30PMin Website: Question:DeckShuffling Givenanarrayofdistinctintegers,giveanalgorithmtorandomlyreorderthe integerssothateachpossiblereorderingisequallylikely.inotherwords,givena deckofcards,howcanyoushufflethemsuchthatanypermutationofcardsis equallylikely? Goodanswer:Gothroughtheelementsinorder,swappingeachelementwitha randomelementinthearraythatdoesnotappearearlierthantheelement.this takeso(n)time. Notethatthereareseveralpossiblesolutionstothisproblem,aswellasseveral good lookinganswersthatareincorrect.forexample,aslightmodificationtothe abovealgorithmwherebyoneswitcheseachelementwithanyelementinthearray doesnotgiveeachreorderingwithequallyprobability.theanswergivenhereis,in ouropinion,thebestsolution.ifyouwanttoseeothersolutions,checkthe "Shuffling"pageonWikipedia. BinarySearchTrees Abinarysearchtreeisadatastructurethatkeepsitemsinsortedorder.Itconsists ofabinarytree.eachnodehasapointertotwochildren(oneorbothofwhichmay benull),anoptionalpointertoitsparent(whichmaybenull),andoneelementthat isbeingstoredinthetree(perhapsastringoraninteger).forabinarysearchtree tobevalid,eachnode'selementmustbegreaterthaneveryelementinitsleft subtreeandlessthaneveryelementinitsrightsubtree.forexample,abinarytree mightlooklikethis: 17 / \ 6 46 / \ \ / / \ /

2 Tocheckwhetheranelementappearsinabinarysearchtree,oneneedonlyfollow theappropriatelinksfromparenttochild.forexample,ifwewanttosearchfor15 intheabovetree,westartattheroot,17.since15<17,wemovetotheleftchild,6. Since15>6,wemovetotherightchild,12.Since15>12,wemovetotheright childagain,15.nowwehavefoundthenumberwewerelookingfor,sowe'redone. Toaddanelementtoabinarysearchtree,webeginasifweweresearchingforthe element,followingtheappropriatelinksfromparenttochild.whenthedesired childisnull,weaddtheelementasanewchildnode.forexample,ifweweretoadd 14totheabovetree,wewouldgodownthetree.Oncewereached15,wewouldsee thatthenodehasnoleftchild,sowewouldadd14asaleftchild. Toremoveanelementfromabinarysearchtree,wefirstfindthenodecontaining thatelement.ifthenodehaszerochildren,wesimplyremoveit.ifithasonechild, wereplacethenodewithitschild.ifithastwochildren,weidentifythenextsmallerornext largerelementinthetree(itdoesn'tmatterwhich),usingan algorithmwhichwedonotdescribehereforthesakeofbrevity.wesettheelement storedinthenodetothisvalue.then,wesplicethenodethatcontainedthevalue fromthetree.thiswillberelativelyeasy,sincethenodewillhaveatmostonechild. Forexample,toremove6fromthetree,wefirstchangethenodetohavethevalue 3.Then,weremovethenodethatusedtohavethevalue3,andwemake1theleft childofthenodethatusedtohavethevalue6. Asmallmodificationtoabinarysearchtreeallowsittobeusedtoassociatekeys withvalues,asinahashtable.insteadofstoringasinglevalueineachnode,one couldstoreakey valuepairineachnode.thetreewouldbeorderedbasedonthe nodes'keys. Interviewerssometimesaskaboutbinarysearchtrees.Inaddition,binarysearch treesareoftenusefulasacomponentofananswertointerviewquestions.the importantthingtorememberisthatinsertion,removal,andlookuptakeo(logn) time(wherenisthenumberofelementsinthetree),sincetheheightofawellbalancedbinarysearchtreeiso(logn).althoughintheworstcase,abinarysearch treemighthaveaheightofo(n),thereare"self balancing"binarysearchtreesthat periodicallyreorganizeabsttoensureaheightofo(logn).manyself balancing BST'sguaranteethatoperationstakeO(logn)time.Ifyouwanttolearnmoreabout particulartypesbinarysearchtrees,suchasred blacktrees,werecommendlooking themup. Question:PathBetweenNodesinaBinaryTree Designanalgorithmtofindapathfromonenodeinabinarytreetoanother.

3 GoodAnswer:Therewillalwaysbeexactlyonepath:fromthestartingnodetothe lowestcommonancestorofthenodestothesecondnode.thegoalistoidentifythe lowestcommonancestor. Foreachnode,keeptrackofasetofnodesinthebinarytree(usingahashtableora BST)aswellasacurrentnode.Ateachiteration,foreachofthetwocurrentnodes, changethecurrentnodetobeitsparentandaddittotheappropriateset.thefirst elementthatisaddedtoonesetwhenitisalreadypresentintheothersetisthe lowestcommonancestor.thisalgorithmtakeso(n)time,wherenisthelengthof thepath.forexample,ifwewerefindingthelowestcommonancestorof3and15 intheabovetree,ouralgorithmwoulddothefollowing: Current node 1 Current node 2 Set 1 Set , 6 15, , 6, 17 15, 12, 6 Toimprovethesolution,weactuallyonlyneedtouseonesetinsteadoftwo. BitwiseOperations Integersarerepresentedinacomputerusingbasetwo,usingonly0'sand1's.Each placeinabinarynumberrepresentsapoweroftwo.therightmostbitcorresponds to2^0,theseconddigitfromtherightcorrespondsto2^1,andsoon.forexample, thenumber inbinaryisequalto2^0+2^2+2^6+2^7=197.negative integerscanalsoberepresentedinbinary;lookup"two'scomplement"on Wikipediaformoredetails. Thereareafewoperationsthatacomputercanperformquicklyononeortwo integers.thefirstis"bitwiseand",whichtakestwointegersandreturnsaninteger thathasa1onlyinplaceswherebothoftheinputshada1.forexample: & Anotheroperationis"bitwiseor",whichtakestwointegersandreturnsaninteger thathasa0onlyinplaceswherebothoftheinputshada0.forexample:

4 "Bitwisexor"hasa1ineachplacewherethebitsinthetwointegersisdifferent. Forexample: ^ "Bitwisenegation"takesanumberandinvertseachofthebits.Forexample: ~ "Leftshifting"takesabinarynumber,addsacertainnumberofzerostotheend,and removesthesamenumberofbitsfromthebeginning.forexample, <<4 isequalto likewise,rightshiftingtakesabinarynumber,addsacertain numberofzerostothebeginning,andremovesthesamenumberofbitsfromthe end.forinstance, >>>4= actually,thereisamorecommon formofrightshifting(the"arithmeticrightshift")thatreplacesthefirstfewbits withacopyofthefirstbitinsteadofwithzeros.forexample, >>4= Interviewersliketoaskquestionsrelatedtobitwiselogic.Often,thereisatricky waytosolvetheseproblems.bitwisexorcanoftenbeusedinatrickywaybecause twoidenticalnumbersinanexpressioninvolvingxorwill"cancelout".forexample, 15^12^15=12. Question:Compute2^x Howcanyouquicklycompute2^x? Goodanswer:1<<x(1left shiftedbyx) Question:IsPowerof2 Howcanyouquicklydeterminewhetheranumberisapowerof2? Goodanswer:Checkwhetherx&(x 1)is0.Ifxisnotanevenpowerof2,the highestpositionofxwitha1willalsohavea1inx 1;otherwise,xwillbe andx 1willbe ;and'ingthemtogetherwillreturn0.

5 Question:BeatingtheStockMarket Sayyouhaveanarrayforwhichtheithelementisthepriceofagivenstockondayi. Ifyouwereonlypermittedtobuyoneshareofthestockandselloneshareofthe stock,designanalgorithmtofindthebesttimestobuyandsell. Goodanswer:Gothroughthearrayinorder,keepingtrackoftheloweststockprice andthebestdealyou'veseensofar.wheneverthecurrentstockpriceminusthe currentloweststockpriceisbetterthanthecurrentbestdeal,updatethebestdeal tothisnewvalue. ProgramDesign Althoughitsometimesmayseemlikeit,interviewersaren'talwaysinterestedin littleprogrammingtricksandpuzzles.sometimestheymayaskyoutodesigna programorasystem.forexample,it'snotuncommontobeaskedtosketchout whatclassesyouwouldneedifyouweretowriteapokergameprogramora simulationofcartrafficatanintersection.therearemanydifferentquestionsthe interviewercouldaskaboutdesign,sojustkeepinmindthatifyouneedtodesign theclassesforaprogram,trytokeepyourdesignsimpleandatthesametimeallow forfutureextensionsonyourdesign. Forexample,ifyouweredesigningafive carddrawpokergameprogram,youcould haveagamemodeinterfaceorsuperclassandhaveafivecarddrawsubclassto encapsulatetheparticularrulesforthatversionofthegame.thereforeifthe interviewerthenasksyouhowyoucouldextendthesystemtoallowatexashold 'emgame,youcouldsimplyagainmakeatexasholdemsubclassofgamemode. DesignPatterns Adesignpatternisausefuldesigntechniquethatprogrammershavediscoveredto besousefulovertheyearsthattheygiveaspecificnametoit.interviewers sometimesaskyoutolistsomedesignpattersyouknow,andmayevenaskyouto describehowaparticularoneworks.butbesidesquestionsthatdirectlytestyour knowledgeofthem,designpattersareveryusefulasbuildingblocksforsolving otherquestions,especiallytheonesthatfocusonprogramdesign.thereareseveral designpatternsthatexist,andwerecommendthatyoutakealookatthe"design Pattern"pageonWikipediatogetanideaofseveralofthebest knowones,butthere areafewthattrulystandoutintheirpopularityandusefulness. Listener/ObserverPattern: Thismaybethemostpopulardesignpatternoutthere.Theideaisthis:suppose therewereane maillistforhackingagoogleinterview(unfortunatelythereisn't one,butifwehadbeenabitmoreforward thinking,perhapswewouldhavemade one).thislistwouldallowforimportantannouncementstobesenttoanyonewho

6 caredabouttheclass.everystudentwhoputthemselvesonthelistwouldbea "listener"(or"observer").theteacherwouldbethe"announcer"(or"subject"in sometexts).everytimetheteacherwantedtoletthestudentsknowsomething, theywouldgothoughthee maillistandsendanannouncemente mailtoeach listener. Inaprogram,wewouldhaveaListenerinterfacethatanyclasscouldimplement. ThatListenerinterfacewouldhavesomesortof"update()"methodthatwouldbe calledwhenevertheannouncerwantedtotellthelistenerssomething.the announcerwouldstorealistofallthelisteners.ifwewantedtoaddanobject"foo" asalistener,wewouldcall"announcer.addlistener(foo)",whichwouldcausethe announcertoaddfootoitslistoflisteners.whenevertheannouncerdidsomething importantthatitwantedtotellthelistenersabout,itwouldgothoughitslistof listenersandcall"update()"oneachofthoseobjects. Goingbacktothepokergameprogram,youmightmentiontotheinterviewerthat youcouldusethelistenerdesignpatternforseveralthings.forexample,youcould havetheguibealistenertoseveralobjectsinthegame(suchasplayerhands,the pot,etc.)foranychangesingamestateforwhichitwouldneedtoupdatethe display. SingletonPattern: Thesingletonpatternisusedwhenyouwanttomakesurethereisexactlyone instanceofsomethinginyourprogram.ifyouweremakingalordoftherings game,youwouldwanttomakesurethattheoneringwasonlyinstantiatedonce! WehavetogiveFrodoachance! InJava,forinstance,tomakesurethereisonlyoneofsomething,youcando somethinglikethis: public class OnlyOneOfMe { private static OnlyOneOfMe theoneinstance = null; private OnlyOneOfMe() { // do stuff to make the object } } public static OnlyOneOfMe getinstance() { if (theoneinstance == null) { theoneinstance = new OnlyOneOfMe(); } return theoneinstance; }

7 Noticethatthereisnopublicconstructor.Ifyouwantaninstanceofthisclass,you havetocall"getinstance()",whichensuresthatonlyoneinstanceoftheclassisever made. Model View Controller: Model view controller(mvc)isadesignpatterncommonlyusedinuserinterfaces. Itsgoalistokeepthe"data"separatefromtheuserinterface.Forexample,when designingaprogramthatdisplaysstockinformation,thecodethatdownloadsthe stockinformationshouldnotdependonthecodethatdisplaystheinformation. Theexactmeaningofmodel view controllerisabitambiguous.essentially,a programthatusesmodel view controllerusesseparateprogrammingentitiesto storethedata(the"model"),todisplaythedata(the"view"),andtomodifythedata (the"controller").inmodel view controller,theviewusuallymakesheavyuseof listenerstolistentochangesandeventsinthemodelorthecontroller. Model view controllerisagoodbuzzwordtowhipoutwhenyou'reaskedadesign questionrelatingtoauserinterface. ClassicQuestion#7:RansomNote Let'ssayyou'vejustkidnappedAlyssaHackeryouwanttoleavearansomnotefor BenBitdiddle,sayingthatifheeverwantstoseeheragain,heneedstoswearto neveruseschemeagain.youdon'twanttowritethenotebyhand,sincetheywould beabletotraceyourhandwriting.you'restandinginalyssa'sapartmentandyou seeamillioncomputermagazines.youneedtowriteyournotebycuttingletters outofthemagazinesandpastingthemtogethertoformaletter.here'sthe question:givenanarbitraryransomnotestringandanotherstringcontainingallthe contentsofallthemagazines,writeafunctionthatwillreturntrueiftheransom notecanbemadefromthemagazines;otherwise,itwillreturnfalse.remember, everyletterfoundinthemagazinestringcanonlybeusedonceinyourransomnote. Forexample,iftheransomnotestringwas"noscheme"andthemagazinestring was"programminginterviewsareweird",youwouldreturnfalsesinceyoucan't formthefirststringbygrabbingandrearranginglettersfromthesecondstring. Pretty goodanswer:makeadatastructuretostoreacountofeachletterinthe magazinestring.ifyou'reprogramminginc,youcanmakeanarrayoflength256 andsimplyusetheasciivalueforeachcharacterasitsspotinthearray,since charactersare1byte.ifyou'reprogramminginjava,youcanjustuseahashtable instead(sincecharactersare2bytesinjava).thengothroughthemagazinestring andforeachcharacter,incrementthevalueforthatletterinyourdatastructure. Afteryougothoughthewholemagazinestring,youshouldhaveanexactcountof howmanytimeseachcharacterappearsinthemagazinestring.thengothrough eachcharacterintheransomnotestringandforeverycharacteryouencounter,

8 decrementthevalueforthatletterinyourdatastructure.ifyoueverfindthatafter youdecrementacounttosomethinglessthan0,youknowyoucan'tmakethe ransomnote,soyouimmediatelyreturnfalse.ifhoweveryougetthoughtheentire ransomnotewithoutrunningoutofavailableletters,youreturntrue. Evenbetteranswer:Becausethemagazinestringmaybeverylarge,wewantto reducethetimewespendgoingthroughthemagazinestring.weusethesameidea asabove,exceptwegothroughtheransomnoteandthemagazinestringatthe sametime.keeponepointerforourcurrentcharacterintheransomnoteand anotherpointerforourcurrentcharacterinourmagazinestring.first,checktosee ifthecountinourdatastructureforourcurrentransomnotecharacterisgreater than0.ifitis,decrementitandadvancethepointerinourransomnote.ifitisn't, startgoingthroughthecharactersinthemagazinestring,updatingthecountsinthe datastructureforeachcharacterencountered,untilwereachthecharacterweneed forourransomnote.thenstopadvancingthemagazinestringpointerandstart advancingtheransomnotepointeragain.ifwegettotheendoftheransomnote, wereturntrue.ifwegettotheendofthemagazinestring(meaningwedidn'tfind enoughlettersforourransomnote),wereturnfalse.

Algorithms and Data Structures Written Exam Proposed SOLUTION

Algorithms and Data Structures Written Exam Proposed SOLUTION Algorithms and Data Structures Written Exam Proposed SOLUTION 2005-01-07 from 09:00 to 13:00 Allowed tools: A standard calculator. Grading criteria: You can get at most 30 points. For an E, 15 points are

More information

Chapter 14 The Binary Search Tree

Chapter 14 The Binary Search Tree Chapter 14 The Binary Search Tree In Chapter 5 we discussed the binary search algorithm, which depends on a sorted vector. Although the binary search, being in O(lg(n)), is very efficient, inserting a

More information

Client-server Sockets

Client-server Sockets Client-server Sockets 1 How to Write a Network Based Program (Using Microchip's TCP/IP Stack) A network based program that uses the Client-server architecture must create at least two separate programs,

More information

Here is a quick diagram of the ULV SSO/Sync Application. Number 3 is what we deal with in this document.

Here is a quick diagram of the ULV SSO/Sync Application. Number 3 is what we deal with in this document. University of La Verne Single-SignOn Project How this Single-SignOn thing is built, the requirements, and all the gotchas. Kenny Katzgrau, August 25, 2008 Contents: Pre-requisites Overview of ULV Project

More information

MiTel VoIP Phone System

MiTel VoIP Phone System MiTel Phone HowTo MiTel VoIP Phone System Agenda the key word is Flexible System Overview Popular Features Phone Use Web Setup Tips / Notes Lab System Overview PoE Power Over Ethernet Servers are "in the

More information

Singletons. The Singleton Design Pattern using Rhapsody in,c

Singletons. The Singleton Design Pattern using Rhapsody in,c Singletons Techletter Nr 3 Content What are Design Patterns? What is a Singleton? Singletons in Rhapsody in,c Singleton Classes Singleton Objects Class Functions Class Variables Extra Functions More Information

More information

Analysis of Algorithms I: Binary Search Trees

Analysis of Algorithms I: Binary Search Trees Analysis of Algorithms I: Binary Search Trees Xi Chen Columbia University Hash table: A data structure that maintains a subset of keys from a universe set U = {0, 1,..., p 1} and supports all three dictionary

More information

Using Adversary Structures to Analyze Network Models,

Using Adversary Structures to Analyze Network Models, MTAT.07.007 Graduate seminar in cryptography Using Adversary Structures to Analyze Network Models University of Tartu [email protected] 1 Outline of the talk Problems in distributed systems Adversary Structure

More information

Where were they Allied and Central Powers located?

Where were they Allied and Central Powers located? Lesson # Overview Title /Standards Big Question for lesson (from teaching thesis) Specific lesson Objectives (transfer from above). Content focused/action verbs Assessment of Objective(s) (you do not need

More information

Data Structures and Data Manipulation

Data Structures and Data Manipulation Data Structures and Data Manipulation What the Specification Says: Explain how static data structures may be used to implement dynamic data structures; Describe algorithms for the insertion, retrieval

More information

Apache Tomcat Clustering

Apache Tomcat Clustering Apache Tomcat Clustering Mark Thomas, Staff Engineer 2012 SpringSource, by VMware. All rights reserved Agenda Introductions Terminology When to cluster Components Configuration choices Debugging Questions

More information

CS330 Design Patterns - Midterm 1 - Fall 2015

CS330 Design Patterns - Midterm 1 - Fall 2015 Name: Please read all instructions carefully. The exam is closed book & no laptops / phones / computers shall be present nor be used. Please write your answers in the space provided. You may use the backs

More information

Immersion Day. Creating an Elastic Load Balancer. Rev 2015-01

Immersion Day. Creating an Elastic Load Balancer. Rev 2015-01 Rev 2015-01 Table of Contents Overview...3 Launch a Second Web Server...4 Create an ELB...6 Copyright 2015, Amazon Web Services, All Rights Reserved Page 2 Overview This lab will walk the user through

More information

Developing SQL and PL/SQL with JDeveloper

Developing SQL and PL/SQL with JDeveloper Seite 1 von 23 Developing SQL and PL/SQL with JDeveloper Oracle JDeveloper 10g Preview Technologies used: SQL, PL/SQL An Oracle JDeveloper Tutorial September 2003 Content This tutorial walks through the

More information

Overview. Semantics of EPCs. EPC Tools. Problem: Vicious Circle. Non-local Semantics of EPCs

Overview. Semantics of EPCs. EPC Tools. Problem: Vicious Circle. Non-local Semantics of EPCs Handout for the talk given in the ejustice Dialogues at Saarland University. June 6, 2005. The Aspects of Business Processes An open and formalism independent architecture Ekkart Kindler Universität Paderborn

More information

UI Performance Monitoring

UI Performance Monitoring UI Performance Monitoring SWT API to Monitor UI Delays Terry Parker, Google Contents 1. 2. 3. 4. 5. 6. 7. Definition Motivation The new API Monitoring UI Delays Diagnosing UI Delays Problems Found! Next

More information

LAB #11: RESONANCE IN AIR COLUMNS

LAB #11: RESONANCE IN AIR COLUMNS OBJECTIVES: LAB #11: RESONANCE IN AIR COLUMNS To determine the speed of sound in air by using the resonances of air columns. EQUIPMENT: Equipment Needed Qty Equipment Needed Qty Resonance Tube Apparatus

More information

For Internet Facing and Private Data Systems

For Internet Facing and Private Data Systems For Internet Facing and Private Data Systems Audience Prerequisites Course Overview Day 1 Section 1: Functionality and Purpose Day 2 Section 2: Policies and Alerts Section 3: Live Lab 2 Lab Setup Course

More information

Chapter 2 Probability Topics SPSS T tests

Chapter 2 Probability Topics SPSS T tests Chapter 2 Probability Topics SPSS T tests Data file used: gss.sav In the lecture about chapter 2, only the One-Sample T test has been explained. In this handout, we also give the SPSS methods to perform

More information

Data Structures CSC212 (1) Dr Muhammad Hussain Lecture - Binary Search Tree ADT

Data Structures CSC212 (1) Dr Muhammad Hussain Lecture - Binary Search Tree ADT (1) Binary Search Tree ADT 56 26 200 18 28 190 213 12 24 27 (2) Binary Search Tree ADT (BST) It is a binary tree with the following properties 1. with each node associate a key 2. the key of each node

More information

Alex. Adam Agnes Allen Arthur

Alex. Adam Agnes Allen Arthur Worksheet 29:Solution: Binary Search Trees In Preparation: Read Chapter 8 to learn more about the Bag data type, and chapter 10 to learn more about the basic features of trees. If you have not done so

More information

TESTING WITH JUNIT. Lab 3 : Testing

TESTING WITH JUNIT. Lab 3 : Testing TESTING WITH JUNIT Lab 3 : Testing Overview Testing with JUnit JUnit Basics Sample Test Case How To Write a Test Case Running Tests with JUnit JUnit plug-in for NetBeans Running Tests in NetBeans Testing

More information

Load Balancer Configuration for Redundancy for SIP Federation

Load Balancer Configuration for Redundancy for SIP Federation Load Balancer Configuration for Redundancy for SIP Federation About the Load Balancer, page 1 IM and Presence Service Node Updates, page 1 Cisco Adaptive Security Appliance Updates, page 2 CA-Signed Security

More information

Power Management in Cloud Computing using Green Algorithm. -Kushal Mehta COP 6087 University of Central Florida

Power Management in Cloud Computing using Green Algorithm. -Kushal Mehta COP 6087 University of Central Florida Power Management in Cloud Computing using Green Algorithm -Kushal Mehta COP 6087 University of Central Florida Motivation Global warming is the greatest environmental challenge today which is caused by

More information

Hacking a Google Interview Handout 2

Hacking a Google Interview Handout 2 HackingaGoogleInterview Handout2 CourseDescription Instructors:BillJacobsandCurtisFonger Time:January12 15,5:00 6:30PMin32 124 Website:http://courses.csail.mit.edu/iap/interview ClassicQuestion#4:Reversingthewordsinastring

More information

INTRODUCTION. Technology is changing everything. Today: Impact on PT Prac1ce Tomorrow: Electronic Health Record and Smart Mobile Devices

INTRODUCTION. Technology is changing everything. Today: Impact on PT Prac1ce Tomorrow: Electronic Health Record and Smart Mobile Devices INTRODUCTION Dr Dennis W Fell Dennis W. Fell, PT, MD, Univ of South Alabama Robert Bob Latz PT, DPT GCFP, Enduracare Alan Chong W Lee PT, DPT, CWS, GCS, Mt Saint Mary College Sheryl Flynn PT, PhD, Blue

More information

Ensuring Data Availability for the Enterprise with Storage Replica

Ensuring Data Availability for the Enterprise with Storage Replica S T O R A G E Ensuring Data Availability for the Enterprise with Storage Replica A Q&A with Microsoft s Senior Program Manager, Ned Pyle Data is the lifeblood of any company, which is a key reason why

More information

EFFECTIVE NOTE- TAKING METHODS. Student Success Workshop Series Sauk Valley Community College

EFFECTIVE NOTE- TAKING METHODS. Student Success Workshop Series Sauk Valley Community College EFFECTIVE NOTE- TAKING METHODS Student Success Workshop Series Sauk Valley Community College Retaining Information Studies show that people may forget: 50% of a lecture within 24 hours 80% in two weeks

More information

Small Business Administration

Small Business Administration SmallBusinessAdministration AgencyWebsiteReview JenniferBishop INFO680USGOVERNMENTINFORMATION DrexelUniversity ProfessorT.Karel March16,2010 Introduction TheSmallBusinessAdministrationwasestablishedin1953underPresidentEisenhower.Since

More information

How To Analyze Logs On Aloha On A Pcode On A Linux Server On A Microsoft Powerbook (For Acedo) On A Macbook Or Ipad (For An Ubuntu) On An Ubode (For Macrocess

How To Analyze Logs On Aloha On A Pcode On A Linux Server On A Microsoft Powerbook (For Acedo) On A Macbook Or Ipad (For An Ubuntu) On An Ubode (For Macrocess Application Note Analyze ALOHA s HAProxy logs with halog Document version: v1.1 Last update: 3rd September 2013 Purpose Being able to analyze logs generated by the ALOHA Load-Balancer stored in a third

More information

Magrathea Non-Geographic Numbering Plan

Magrathea Non-Geographic Numbering Plan Magrathea Tel: 0345 004 0040 Fax: 0345 004 0041 e-mail: [email protected] Magrathea Non-Geographic Numbering Plan Personal Numbering Service 07011 2xxxxx Personal Number 19.98p (pn8) 07031

More information

Software Metrics in Static Program Analysis

Software Metrics in Static Program Analysis www.redlizards.com Software Metrics in Static Program Analysis ICFEM, 11/18/2010 Andreas Vogelsang 1, Ansgar Fehnker 2, Ralf Huuck 2, Wolfgang Reif 3 1 Technical University of Munich 2 NICTA, Sydney 3

More information

SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres. Tore Anderson Redpill Linpro AS 8th Belgian IPv6 Council, Bruxelles, November 2015

SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres. Tore Anderson Redpill Linpro AS 8th Belgian IPv6 Council, Bruxelles, November 2015 SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres Tore Anderson Redpill Linpro AS 8th Belgian IPv6 Council, Bruxelles, November 2015 Why build IPv6-only data centres? IPv4 scarcity - we can no longer

More information

CIMHT_006 How to Configure the Database Logger Proficy HMI/SCADA CIMPLICITY

CIMHT_006 How to Configure the Database Logger Proficy HMI/SCADA CIMPLICITY CIMHT_006 How to Configure the Database Logger Proficy HMI/SCADA CIMPLICITY Outline The Proficy HMI/SCADA CIMPLICITY product has the ability to log point data to a Microsoft SQL Database. This data can

More information

Endowing a virtual assistant with intelligence: a multi-paradigm approach

Endowing a virtual assistant with intelligence: a multi-paradigm approach Endowing a virtual assistant with intelligence: a multi-paradigm approach Josefa Z. Hernández, Ana García Serrano Department of Artificial Intelligence Technical University of Madrid (UPM), Spain {phernan,agarcia}@dia.fi.upm.es

More information

Developer Guide. Android Printing Framework. ISB Vietnam Co., Ltd. (IVC) Page i

Developer Guide. Android Printing Framework. ISB Vietnam Co., Ltd. (IVC) Page i Android Printing Framework ISB Vietnam Co., Ltd. (IVC) Page i Table of Content 1 Introduction... 1 2 Terms and definitions... 1 3 Developer guide... 1 3.1 Overview... 1 3.2 Configure development environment...

More information

YELLOW statements you agreed with (number of checks you made)

YELLOW statements you agreed with (number of checks you made) Your money color will help you understand what you value when it comes to money. It will also help you understand why you use or fail to use money a certain way. Read each statement and respond according

More information

Implementing DHCPv6 on an IPv6 network

Implementing DHCPv6 on an IPv6 network Implementing DHCPv6 on an IPv6 network Benjamin Long [email protected] 8-11-2009 Implementing DHCPv6 on an IPv6 network 2 Table of Contents DHCPv6 Overview...3 Terms used by DHCPv6...3 DHCPv6 Message

More information

MULTIPLE REGRESSION EXAMPLE

MULTIPLE REGRESSION EXAMPLE MULTIPLE REGRESSION EXAMPLE For a sample of n = 166 college students, the following variables were measured: Y = height X 1 = mother s height ( momheight ) X 2 = father s height ( dadheight ) X 3 = 1 if

More information

Introduction to Object-Oriented Programming

Introduction to Object-Oriented Programming Introduction to Object-Oriented Programming Linked Lists Christopher Simpkins [email protected] CS 1331 (Georgia Tech) Linked Lists 1 / 12 Linked Lists Dynamic data structures Singly linked lists

More information

RTCU Gateway 2 Monitor Tool User's Manual

RTCU Gateway 2 Monitor Tool User's Manual RTCU Gateway 2 Monitor Tool User's Manual Version 3.20 I RTCU Gateway 2 - Monitor Tool Table of Contents Part I Monitor Tool 2 1 Clients... 3 2 Message... Log 4 3 Main... Menu 4 File... 5 Connect... 5

More information

Working with Youth to Develop Critical Thinking Skills On Sexual Violence and Dating Violence: Three Suggested Classroom Activities

Working with Youth to Develop Critical Thinking Skills On Sexual Violence and Dating Violence: Three Suggested Classroom Activities Working with Youth to Develop Critical Thinking Skills On Sexual Violence and Dating Violence: Three Suggested Classroom Activities The Southern Arizona Center Against Sexual Assault s Rape Prevention

More information

JA003 Výběrová angličtina pro přírodovědce

JA003 Výběrová angličtina pro přírodovědce JA3 Výběrová angličtina pro přírodovědce Anketa podzim 214 Otázka Název otázky Možnosti Odpovědi 1 2 4 Balance of language and science 3 5 4 4 Balance of language and science From my point of view, balance

More information

TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO

TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO TUTORIAL FOR INITIALIZING BLUETOOTH COMMUNICATION BETWEEN ANDROID AND ARDUINO some pre requirements by :-Lohit Jain *First of all download arduino software from www.arduino.cc *download software serial

More information

There are a couple of notes about this however: It is best to have the IP subnet that the VoIP device on be on the same subnet as the DXL Exchanges.

There are a couple of notes about this however: It is best to have the IP subnet that the VoIP device on be on the same subnet as the DXL Exchanges. Our DXL system with the VoIP (Voice over IP) Option, in addition to the Harding VoIP masters, intercoms, and paging speakers, can interface to VoIP enabled devices such as PDA's and PC soft-phones. We

More information

Linked Lists Linked Lists, Queues, and Stacks

Linked Lists Linked Lists, Queues, and Stacks Linked Lists Linked Lists, Queues, and Stacks CSE 10: Introduction to C Programming Fall 200 Dynamic data structure Size is not fixed at compile time Each element of a linked list: holds a value points

More information

ΕΠΛ 674: Εργαστήριο 5 Firewalls

ΕΠΛ 674: Εργαστήριο 5 Firewalls ΕΠΛ 674: Εργαστήριο 5 Firewalls Παύλος Αντωνίου Εαρινό Εξάμηνο 2011 Department of Computer Science Firewalls A firewall is hardware, software, or a combination of both that is used to prevent unauthorized

More information

Deploying the BIG-IP LTM with. Citrix XenApp. Deployment Guide Version 1.2. What s inside: 2 Prerequisites and configuration notes

Deploying the BIG-IP LTM with. Citrix XenApp. Deployment Guide Version 1.2. What s inside: 2 Prerequisites and configuration notes Deployment Guide Version 1.2 Deploying the BIG-IP LTM with What s inside: 2 Prerequisites and configuration notes 3 Configuration Worksheet 4 Using the BIG-IP LTM Application Template for 8 Modifying the

More information

Practical Load Balancing

Practical Load Balancing Practical Load Balancing Ride the Performance Tiger Illtil Peter Membrey David Hows Eelco Plugge Apress8 Contents About the Authors About the Technical Reviewers Special Thanks to serverlove Acknowledgments

More information

Packet Sniffing on Layer 2 Switched Local Area Networks

Packet Sniffing on Layer 2 Switched Local Area Networks Packet Sniffing on Layer 2 Switched Local Area Networks Ryan Spangler [email protected] Packetwatch Research http://www.packetwatch.net December 2003 Abstract Packet sniffing is a technique of monitoring

More information

Scoping (Readings 7.1,7.4,7.6) Parameter passing methods (7.5) Building symbol tables (7.6)

Scoping (Readings 7.1,7.4,7.6) Parameter passing methods (7.5) Building symbol tables (7.6) Semantic Analysis Scoping (Readings 7.1,7.4,7.6) Static Dynamic Parameter passing methods (7.5) Building symbol tables (7.6) How to use them to find multiply-declared and undeclared variables Type checking

More information

Feel free to use these letters to contact your friends and family about Swim-A-Thon! Dear,

Feel free to use these letters to contact your friends and family about Swim-A-Thon! Dear, Feel free to use these letters to contact your friends and family about Swim-A-Thon! Dear, Everyday after school I train with my swim team, Skaneateles Lightning. I work hard to learn all four competitive

More information

Use these cards as a matching game

Use these cards as a matching game Matching card game activity Worksheet for teachers Use these cards as a matching game They can be used in a variety of ways but you could: Put the pupils into small groups and give them both the word cards

More information

TFE listener architecture. Matt Klein, Staff Software Engineer Twitter Front End

TFE listener architecture. Matt Klein, Staff Software Engineer Twitter Front End TFE listener architecture Matt Klein, Staff Software Engineer Twitter Front End Agenda TFE architecture overview TSA architecture overview TSA hot restart Future plans Q&A TFE architecture overview Listener:

More information

Abstract Data Type. EECS 281: Data Structures and Algorithms. The Foundation: Data Structures and Abstract Data Types

Abstract Data Type. EECS 281: Data Structures and Algorithms. The Foundation: Data Structures and Abstract Data Types EECS 281: Data Structures and Algorithms The Foundation: Data Structures and Abstract Data Types Computer science is the science of abstraction. Abstract Data Type Abstraction of a data structure on that

More information

Cloud.. Migration? Bursting? Orchestration? Vincent Lavergne SED EMEA, South Gary Newe Sr SEM EMEA, UKISA

Cloud.. Migration? Bursting? Orchestration? Vincent Lavergne SED EMEA, South Gary Newe Sr SEM EMEA, UKISA Cloud.. Migration? Bursting? Orchestration? Vincent Lavergne SED EMEA, South Gary Newe Sr SEM EMEA, UKISA Technology shifts center on applications Advanced threats APIs Internet of things Mobility SDDC/Cloud

More information

Preparing professionals to meet our diverse community s lifelong educational needs

Preparing professionals to meet our diverse community s lifelong educational needs PortlandStateUniversity GraduateSchoolofEducation Preparingprofessionalstomeetourdiversecommunity slifelongeducationalneeds FoundationsofSubstanceAbuseCounseling Course/CRN#: Coun531(10978) Term: Fall2011

More information

Solving Systems of Linear Equations Using Matrices

Solving Systems of Linear Equations Using Matrices Solving Systems of Linear Equations Using Matrices What is a Matrix? A matrix is a compact grid or array of numbers. It can be created from a system of equations and used to solve the system of equations.

More information

BUILDING COMPETENT SMGC, HK SHANE W EARLY

BUILDING COMPETENT SMGC, HK SHANE W EARLY BUILDING COMPETENT BAFS STUDENTS SMGC, HK SHANE W EARLY My School S3 S4 S5 S6 Intro to Sept Feb. Business Business BAFS Business or or (4 lessons week) Accounting Accounting 8 Business lessons (1 per week

More information

Installing and Setting up Microsoft DNS Server

Installing and Setting up Microsoft DNS Server Training Installing and Setting up Microsoft DNS Server Introduction Versions Used Windows Server 2003 Setup Used i. Server Name = martini ii. Credentials: User = Administrator, Password = password iii.

More information

Project 4 DB A Simple database program

Project 4 DB A Simple database program Project 4 DB A Simple database program Due Date April (Friday) Before Starting the Project Read this entire project description before starting Learning Objectives After completing this project you should

More information

CS107L Handout 04 Autumn 2007 October 19, 2007 Custom STL-Like Containers and Iterators

CS107L Handout 04 Autumn 2007 October 19, 2007 Custom STL-Like Containers and Iterators CS107L Handout 04 Autumn 2007 October 19, 2007 Custom STL-Like Containers and Iterators This handout is designed to provide a better understanding of how one should write template code and architect iterators

More information

15-441: Computer Networks Project 1: Internet Relay Chat (IRC) Server

15-441: Computer Networks Project 1: Internet Relay Chat (IRC) Server 15-441: Computer Networks Project 1: Internet Relay Chat (IRC) Server Lead TA: Daegun Won Assigned: January 21, 2010 Checkpoint 1 due: January 26, 2010 Checkpoint 2 due: February

More information

Effective performance appraisal: Asking the right questions. Professor Carol Cardno Unitec Institute of Technology Auckland, New Zealand

Effective performance appraisal: Asking the right questions. Professor Carol Cardno Unitec Institute of Technology Auckland, New Zealand Effective performance appraisal: Asking the right questions Professor Carol Cardno Unitec Institute of Technology Auckland, New Zealand Listen to the sound of performance appraisal in practice! Be nice

More information

Fashion Design & Merchandising Course Description

Fashion Design & Merchandising Course Description FashionDesign&Merchandising LakeHavasuHighSchool2009/10 LENGTHOFCOURSE:36weeks GRADELEVEL:10 12 FashionDesign&MerchandisingCourseDescription PREREQUISITES:FundamentalsofSocialandHumanServices COURSEDESCRIPTION:

More information

ΕΠΛ 475: Εργαστήριο 9 Firewalls Τοίχοι πυρασφάλειας. University of Cyprus Department of Computer Science

ΕΠΛ 475: Εργαστήριο 9 Firewalls Τοίχοι πυρασφάλειας. University of Cyprus Department of Computer Science ΕΠΛ 475: Εργαστήριο 9 Firewalls Τοίχοι πυρασφάλειας Department of Computer Science Firewalls A firewall is hardware, software, or a combination of both that is used to prevent unauthorized Internet users

More information

STREAMEZZO RICH MEDIA SERVER

STREAMEZZO RICH MEDIA SERVER STREAMEZZO RICH MEDIA SERVER Clustering This document is the property of Streamezzo. It cannot be distributed without the authorization of Streamezzo. Table of contents 1. INTRODUCTION... 3 1.1 Rich Media

More information

Evaluation of AgitarOne

Evaluation of AgitarOne Carnegie Mellon University, School of Computer Science Master of Software Engineering Evaluation of AgitarOne Analysis of Software Artifacts Final Project Report April 24, 2007 Edited for public release

More information

From Systems to Services

From Systems to Services From Systems to Services How we can collaborate in the new paradigm? Randy Ballew, Chief Technology Architect, IST-AS Steve Masover, Architecture Group, IST-AS Overview What is "software as services"?

More information

Mining for Bugs with Graph Database Queries

Mining for Bugs with Graph Database Queries Mining for Bugs with Graph Database Queries Fabian Yamaguchi (@fabsx00) 31C3 GEORG-AUGUST-UNIVERSITÄT GÖTTINGEN Hello 31C3!» It s been 5 years since my last CCC talk» Talk back then: mostly about hard

More information

Challenges for cloud software engineering

Challenges for cloud software engineering Challenges for cloud software engineering Ian Sommerville St Andrews University Why is cloud software engineering different or is it? What needs to be done to make cloud software engineering easier for

More information

Setting up the integration between Oracle Social Engagement & Monitoring Cloud Service and Oracle RightNow Cloud Service

Setting up the integration between Oracle Social Engagement & Monitoring Cloud Service and Oracle RightNow Cloud Service An Oracle Best Practice Guide November 2013 Setting up the integration between Oracle Social Engagement & Monitoring Cloud Service and Oracle RightNow Cloud Service Introduction Creation of the custom

More information

2.1.2.2.2 Variable length subnetting

2.1.2.2.2 Variable length subnetting 2.1.2.2.2 Variable length subnetting Variable length subnetting or variable length subnet masks (VLSM) allocated subnets within the same network can use different subnet masks. Advantage: conserves the

More information

Network Terminology Review

Network Terminology Review Network Terminology Review For those of you who have experience with IP networks, this document may serve as a reminder of the current lexicon of terms used in our industry. If you re new to it or specialized

More information

SolarWinds. Understanding SolarWinds Charts and Graphs Technical Reference

SolarWinds. Understanding SolarWinds Charts and Graphs Technical Reference SolarWinds Understanding SolarWinds Charts and Graphs Technical Reference Copyright 1995-2015 SolarWinds Worldwide, LLC. All rights reserved worldwide. No part of this document may be reproduced by any

More information

ICON UK 2015 node.js for Domino developers. Presenter: Matt White Company: LDC Via

ICON UK 2015 node.js for Domino developers. Presenter: Matt White Company: LDC Via ICON UK 2015 node.js for Domino developers Presenter: Matt White Company: LDC Via September 2012 Agenda What is node.js? Why am I interested? Getting started NPM Express Domino Integration Deployment A

More information

Distributed Embedded Systems

Distributed Embedded Systems Distributed Embedded Systems Computer Architecture and Operating Systems 2 Content 1. Motivation 2. An Overview of Distributed Software Architecture Approaches 2.1 Pro & Contra Middleware 2.2 Message-Based

More information

Figure out the early start and early finish. Early start. Early finish

Figure out the early start and early finish. Early start. Early finish Figure out the early start and early finish oming up with the float for each activity is useful, but you can actually do better! When you have a long critical path, but the other paths in your network

More information

White Paper. Fabasoft on Linux Cluster Support. Fabasoft Folio 2015 Update Rollup 2

White Paper. Fabasoft on Linux Cluster Support. Fabasoft Folio 2015 Update Rollup 2 White Paper Fabasoft Folio 2015 Update Rollup 2 Copyright Fabasoft R&D GmbH, Linz, Austria, 2015. All rights reserved. All hardware and software names used are registered trade names and/or registered

More information

ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OBJECTS IN WEB APPLICATION

ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OBJECTS IN WEB APPLICATION ABSTRACT FACTORY AND SINGLETON DESIGN PATTERNS TO CREATE DECORATOR PATTERN OBJECTS IN WEB APPLICATION Vijay K Kerji Department of Computer Science and Engineering, PDA College of Engineering,Gulbarga,

More information

How to create Event Filters directly from the Event Viewer

How to create Event Filters directly from the Event Viewer How to create Event Filters directly from the Event Viewer Event Filters determine the action that SNMPc takes when a trap is received or an event is triggered. SNMPc 7.0 supports the ability to create

More information

The ADT Binary Search Tree

The ADT Binary Search Tree The ADT Binary Search Tree The Binary Search Tree is a particular type of binary tree that enables easy searching for specific items. Definition The ADT Binary Search Tree is a binary tree which has an

More information