|
ironypolice posted:The best I can come up with is to compare every pair of rectangles, and if they overlap reduce them into components like so: That's how I solved it in the past for a problem where you drew colored rectangles in a specific order and then had to say how much of each color was would be on top. For the single color solution you could even sort the list of rectangles and significantly increase average case performance by reducing the number of comparisons for each new rectangle. Surprisingly I find this problem easier than selecting a truly random element from a b-tree, but that's probably a result of spending too much time with programming contest type problems and little real world programming experience. Aredna fucked around with this message at 17:16 on Sep 13, 2011 |
# ? Sep 13, 2011 17:13 |
|
|
# ? May 17, 2024 05:08 |
|
Aredna posted:Surprisingly I find this problem easier than selecting a truly random element from a b-tree Now do it in O(n log n) time.
|
# ? Sep 13, 2011 17:16 |
|
shrughes posted:Now do it in O(n log n) time. Maybe store the vertices in a 2-d array, with a pointer from each vertex to a rectangle structure? That way overlaps can be easily detected. This may also be completely insane.
|
# ? Sep 13, 2011 17:55 |
|
shrughes posted:Now do it in O(n log n) time. My solution so far involves sorting a list of 'events' from top to bottom, where each event occurs when a rectangle begins (top edge) or ends (bottom edge). Then there's a linear sweep where edges are maintained in some sort of data structure such that the 'current union length' can be calculated in lg n time, multiply that length by the height distance between the current event and the next event for the union area of that slice. Of course the hard part seems to be figuring out what data structure to use such that it isn't an O(n^2) problem, like when all N rectangles overlap. Is this the right approach? edit: lg n, not lg in Orzo fucked around with this message at 18:54 on Sep 13, 2011 |
# ? Sep 13, 2011 18:41 |
|
Orzo posted:Is this the right approach? Yes.
|
# ? Sep 13, 2011 18:51 |
|
Thanks guys, I'm giving tef a call now. Got this job in the bag!
|
# ? Sep 14, 2011 11:23 |
|
I feel like I have to memorize all this computer science stuff when it comes to data structures and algorithms, it's all a bit daunting. I finished school in May 2011, but the last time I had to deal with stuff like binary search trees and other abstract data structures was like 2008. Most of my important computer science courses were earlier on in my college career and I guess my memory just blows. How do you guys handle all this information? Should I just dig through my old notebooks and just read them? I feel like it's just so much to remember and depending on the company, they may not even ask a thing about it That's part of my problem with the technical interviews, I never know what to expect. Sorry if I'm rambling, I'm frustrated
|
# ? Sep 14, 2011 21:12 |
|
Puddy1 posted:How do you guys handle all this information? I don't memorize anything, we don't ask any questions that expect people to have memorized anything, and never in any job interview have I been given a question that asked for memorized knowledge (other than one question that made sure I actually knew Haskell the way my resume said I did). What kind of questions are you getting that expect you to have memorized something?
|
# ? Sep 14, 2011 22:04 |
|
Puddy1 posted:I feel like I have to memorize all this computer science stuff when it comes to data structures and algorithms, it's all a bit daunting. I finished school in May 2011, but the last time I had to deal with stuff like binary search trees and other abstract data structures was like 2008. You have to brush up from time to time. My algorithms class was over 15 years ago and the day-to-day work over that period has been vastly more tedium than pondering algorithms, so I have to look stuff up (that I probably aced on the test 15 years ago) all the time.
|
# ? Sep 14, 2011 22:15 |
|
shrughes posted:I don't memorize anything, we don't ask any questions that expect people to have memorized anything, and never in any job interview have I been given a question that asked for memorized knowledge (other than one question that made sure I actually knew Haskell the way my resume said I did). quote:Ask him to write a function that takes a binary tree and return true if and only if it is a binary search tree. I know I sound like a moron, but at least I can write FizzBuzz no problem :s.
|
# ? Sep 15, 2011 00:43 |
|
Technically you could call the learning of any piece of information 'memorizing.' But there are certain things that you're expected to remember, such as what a binary search tree is, or what a linked list is.
|
# ? Sep 15, 2011 02:42 |
|
Orzo posted:Technically you could call the learning of any piece of information 'memorizing.' But there are certain things that you're expected to remember, such as what a binary search tree is, or what a linked list is. Yeah, I guess it's what Paolomania said and I really should brush up on that stuff. It just feels so tedious going through my past notes, I think I might try to find an online lecture series to watch to relearn some fundamentals.
|
# ? Sep 15, 2011 20:22 |
|
The number of data structures and algorithms you're expected to have memorized isn't really huge; let's see for data strucutres, I'd guess there's arrays, linked lists, hash tables, array-based lists, maps, binary search trees, heaps. More difficult and important is knowing the how and why behind those data structures and algorithms.
|
# ? Sep 15, 2011 20:50 |
|
Aredna posted:That's how I solved it in the past for a problem where you drew colored rectangles in a specific order and then had to say how much of each color was would be on top. There exists a less lovely version of this somewhere in a good comp geom textbook.
|
# ? Sep 15, 2011 21:26 |
|
So, earlier this week I posted about having a phone interview for an internship. Just got that call. It went alright. -Asked me how databases work (ie. A database is made of tables, is made of columns, which has rows of data in it, thought that was a strange question) -Difference from an object and a class -How much I knew about HTTP. I thought this was a pretty vague question and didn't know how to answer it with anything other than what it stands for. They want me full time for three months- unpaid though. A friend of mine (lives in a different state) said it's not legal for companies to have you full time and unpaid as a student, unless it's for credit hours with the college. Either way, I'm gunna talk to my student advisor to see if I could work that out, and then my parents to see if they might be able to help me out for three months. Scheduled a follow-up interview this coming Wednesday, they said it's a "small office, don't need to dress up" but I've heard people saying that that can be a trap. I figure I'll just wear some nice work pants / button up shirt. No tie or coat or anything too fancy. Meet 'em half way? I'm really not sure how I feel about all this
|
# ? Sep 16, 2011 18:58 |
|
On the whole, you have an opportunity you can turn down at any moment. If you are an unpaid intern you shouldn't really have to give much notice. If they demand a long notice period it is probably not worth it. I.e. it's worth going along with as long as you can walk away pretty quickly if it turns out bad. Sab669 posted:-How much I knew about HTTP. I thought this was a pretty vague question and didn't know how to answer it with anything other than what it stands for. If you get this imagine you are giving the wikipedia answer - imagine what you would find on wikipedia if you looked it up. I.e HTTP is a protocol used by web browsers to deliver html and other content over the internet. there a variety of tools blah blah blah apache blah blah firefox blah blah chrome blah blah tim berners lee blah blah chunked encoding blah blah tcp blah PUT blah hyperlinks blah URI vs URL
|
# ? Sep 16, 2011 19:09 |
Sab669 posted:So, earlier this week I posted about having a phone interview for an internship. Just got that call. It went alright. I dunno man, if you're even half-competent you should be able to swing $15-$20/hr. I'd keep looking.
|
|
# ? Sep 16, 2011 19:41 |
|
Sab669 posted:They want me full time for three months- unpaid though. A friend of mine (lives in a different state) said it's not legal for companies to have you full time and unpaid as a student, unless it's for credit hours with the college. Either way, I'm gunna talk to my student advisor to see if I could work that out, and then my parents to see if they might be able to help me out for three months. I'd go to the interview and see what they have to say. Remember the interview is as much about them interviewing you as you are interviewing them. I also agree on your dress attire (button up/polo tucked in, khakis, nice shoes, and a belt). The legality of the employment is hog wash. There are no government rules about being a college student and how much they can schedule you. If the job was through the school there might be rules imposed by the school. If "full time" is 40+ hours a week unpaid I'd skip it unless jobs are really scarce in your area or what they are doing is SO cool. Like A MIRACLE said you should be making at least $10+/hour. They need to compensate you with something so maybe the job will be really fulfilling.
|
# ? Sep 16, 2011 20:06 |
|
Sab669 posted:Scheduled a follow-up interview this coming Wednesday, they said it's a "small office, don't need to dress up" but I've heard people saying that that can be a trap. I figure I'll just wear some nice work pants / button up shirt. No tie or coat or anything too fancy. Meet 'em half way?
|
# ? Sep 16, 2011 20:46 |
|
I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically. Whether that's a valid reason for it to be unpaid or not isn't for me to say, I guess. I too was hoping for at least $15/hr And in general, internships / entry-level positions seem rather scarce in here Rhode Island.
|
# ? Sep 16, 2011 21:20 |
|
Sab669 posted:I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically. This is bullshit, any reasonable startup can pay intern salaries. There is no reason you should work for free as an engineering intern. This is complete insanity. Just run away. Run! Sab669 posted:And in general, internships / entry-level positions seem rather scarce in here Rhode Island. Then why are you looking in Rhode Island? Get an internship in Boston, get a room in Cambridge on Craigslist for the duration, problem solved.
|
# ? Sep 17, 2011 00:05 |
|
Or just commute on the loving MBTA commuter rail
|
# ? Sep 17, 2011 01:29 |
|
I too will say 'holy poo poo do not take that unpaid job'.
|
# ? Sep 17, 2011 01:38 |
|
Does the US not have some sort of subsidy for hiring students/new grads in tech roles? I would think there'd be all kinds of grants with all the 'omg we need STEM students' I've been reading about... I'm pretty sure the following is accurate, or at least close, in Canada (perhaps this is a provincial-level thing), employers can apply get $9-10/hr towards internship/co-op students which they're supposed to bump up to at least something like $16-17/hr, and I think they can also get $25k towards new grad salaries, possibly dependent on if it's a startup or not. e: US dept of labour says unpaid internship is legal only if a for-profit employer isn't getting work of any immediate benefit to them (ie. a waste of both your time) http://www.dol.gov/whd/regs/compliance/whdfs71.pdf Criteria for legal unpaid intern: 1. The internship, even though it includes actual operation of the facilities of the employer, is similar to training which would be given in an educational environment; 2. The internship experience is for the benefit of the intern; 3. The intern does not displace regular employees, but works under close supervision of existing staff; 4. The employer that provides the training derives no immediate advantage from the activities of the intern; and on occasion its operations may actually be impeded; 5. The intern is not necessarily entitled to a job at the conclusion of the internship; and 6. The employer and the intern understand that the intern is not entitled to wages for the time spent in the internship. Pweller fucked around with this message at 03:46 on Sep 17, 2011 |
# ? Sep 17, 2011 03:22 |
|
Sab669 posted:I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically. Either the employees themselves are being paid, in which case the reason is bullshit, or they're not, and the company can't make payroll. Either case is worrying.
|
# ? Sep 17, 2011 05:01 |
|
Sab669 posted:I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. They're in the final stages of development, they say, and are looking to hire on a few more hands for when it goes live basically. Pweller posted:Does the US not have some sort of subsidy for hiring students/new grads in tech roles? I would think there'd be all kinds of grants with all the 'omg we need STEM students' I've been reading about... quote:e: US dept of labour says unpaid internship is legal only if a for-profit employer isn't getting work of any immediate benefit to them (ie. a waste of both your time)
|
# ? Sep 17, 2011 05:03 |
|
Cicero posted:Yeah everyone ignores this for some reason. It's good cover for asking to be paid or for declining the offer, even if employers typically ignore it, so it's worth pointing out.
|
# ? Sep 17, 2011 06:17 |
|
Sab669 posted:I think the big reason why it's unnpaid is because it's a small startup company that hasn't actually rolled out its first product commercially. You do not work for nothing. Even apart from the obvious reasons, it's a giant red flag about how you are likely to be treated, how your work is likely to be valued, and the other people you'll be working with.
|
# ? Sep 17, 2011 09:09 |
|
My first CS internship was with a small startup company that didn't have a commercial product at the time, and I still got $15/hr.
|
# ? Sep 17, 2011 09:42 |
|
Nothing destroys morale and your motivation better than knowing no matter how much you improve as a developer, you won't get paid any extra. The same is doubly true for not getting paid at all.
|
# ? Sep 17, 2011 10:07 |
|
Milotic posted:Nothing destroys morale and your motivation better than knowing no matter how much you improve as a developer, you won't get paid any extra. Maybe for you.
|
# ? Sep 17, 2011 10:27 |
|
pokeyman posted:Maybe for you. I've been in that situation. The previous company I worked for (about 1700 employees) announced a 2 year pay freeze for all employees. The difference it made to the company culture was staggering - it quickly transformed from a slightly bureaucratic, but pleasant and vaguely 'can-do' culture to a place that was really not great to work for. People outside IT could game the system since promotions still resulted in a pay-rise, but promotions in IT didn't - so a good chunk of developers who had been there 5 years or more quit, and still are quitting. Never underestimate the motivation of prospective future reward. That, and any developer or IT employee worth his or her salt should continually be improving. That means your labour is worth more. Only a pinko commie would not want to be rewarded for the value of their labour. (e: Especially with inflation being around 5% for the past 2 years and VAT going from 17.5% to 20% - hello reduction in standard of living!) Milotic fucked around with this message at 10:47 on Sep 17, 2011 |
# ? Sep 17, 2011 10:45 |
|
I'm going to be graduating in December with a CS degree. I went to the career fair today, spoke with the rep from a company, and he called me a few hours ago to set up an interview for tomorrow morning. This is my first interview for a true technical position, so I'm sort of freaking out. He said the technical questions will focus mainly on object oriented design and some basic database stuff. The interview is supposed to last about 30 minutes (so the technical stuff is probably 20-25 minutes. Any idea what kind of questions I can expect? Thanks! Maybe I shouldn't worry too much. I can explain/do all of that without a problem. I hope he doesn't ask really complex algorithm problems because that's probably my weakest area. VVVVV Super Dude fucked around with this message at 07:02 on Sep 22, 2011 |
# ? Sep 22, 2011 05:35 |
|
Super Dude posted:I'm going to be graduating in December with a CS degree. I went to the career fair today, spoke with the rep from a company, and he called me a few hours ago to set up an interview for tomorrow morning. This is my first interview for a true technical position, so I'm sort of freaking out. He said the technical questions will focus mainly on object oriented design and some basic database stuff. The interview is supposed to last about 30 minutes (so the technical stuff is probably 20-25 minutes. Any idea what kind of questions I can expect? Stuff I might ask if I were in their shoes, and stuff I have asked in interviews in the past: OO stuff: - What's a class? What's an object? What's the difference between the two? (Seriously this sounds like baby CS101 stuff that you can explain in one sentence, but you'd have no idea how many times candidates totally blow it) - What's the difference between static and instance variables/methods? When would you want to use static fields or methods? - Explain inheritance and polymorphism to me. What does it mean to override something? What's the difference between overriding and overloading? DB stuff: - What does a join clause do? What's the difference between an inner join and an outer join? What about left outer join vs right outer join? - Design a database to model this problem. I run a department store. My customers buy things in orders. Sometimes they buy more than one item in an order. Help me track my customers, my products for sale, the orders (what customers bought when), and what method of payment they used on the order. (At a high level what I'd expect someone to have here is a table for customers, and a table for products. You'd also have a table for orders that has a foreign key to customers and a field for method of payment, and then also a bridge table between orders and products) - Show me what the primary keys are in each of these tables in your database. - Write me a SQL query against your database to find all the customers who bought Product X. - Write me a query to find all customers who have paid with a credit card more than 3 times. use GROUP BY kitten smoothie fucked around with this message at 06:41 on Sep 22, 2011 |
# ? Sep 22, 2011 06:37 |
|
Well I thought the interview went relatively well. It consisted of 1 math problem (statistics), 1 database problem, and 1 java problem. I breezed through the first two, and got stuck on the programming one for a few minutes, but finished it in the end. I got all of the theory questions right as well. Thanks for the help kitten smoothie!
|
# ? Sep 22, 2011 20:18 |
|
A person from a local development company came into one of my classes two weeks ago to let everyone know his company was looking to hire a senior developer, but that they were really flexible on what "senior" meant and were basically interested in hiring someone competent and paying him/her according to their skill. He also said that they were also open to internships. However, the position(s) is/are for immediate hire, and I'm taking 24 credit-hours this semester, so I don't think I could do it right now. Should I save the handout and send him my resume in a few months when I would be free, or should I put together a resume and a cover letter explaining that I'd be quite glad to work for them a few months from now if they are still looking to hire? Or should I just forget since two weeks is a long time to wait and he's probably forgotten all about it? I also feel that my application could be much stronger later on, as I'm currently working on a number of projects for several classes that should be kind of cool when they're finished, but right now would look kind of bad since they're incomplete, and I currently don't have anything other than homework assignments, so nothing to show that I have actually done productive, non-homework development. That's one reason I'm leaning toward applying later if that's not going to be a horrible idea. He did say that the work was virtual, so entirely from home, and that we would be able to work at our leisure. He said like 20 hours a week would be fine, as they weren't stuck on having one person, but would be fine with hiring multiple people, as long as we can be available to meet (virtually) when everyone meets, as they are an agile team. So should I not even mention my course load and apply for work immediately? I'm guessing that having a job while in school would look better later on than getting a couple of Bs this semester. Safe and Secure! fucked around with this message at 22:36 on Sep 26, 2011 |
# ? Sep 26, 2011 22:30 |
|
Safe and Secure! posted:However, the position(s) is/are for immediate hire, and I'm taking 24 credit-hours this semester, so I don't think I could do it right now. Should I save the handout and send him my resume in a few months when I would be free, or should I put together a resume and a cover letter explaining that I'd be quite glad to work for them a few months from now if they are still looking to hire? When a (conceivably 20hr/wk) job gets dropped in your lap in your situation, apply for it. The worst that can happen is you get interview practice. If they want to hire you, explain your situation. If you can't swing a 20hr/wk job for a couple of months with school I don't know what to tell you, but this is an excellent opportunity.
|
# ? Sep 26, 2011 23:13 |
|
The only person who can judge if you can handle the course load and a 20+ hour a week job is you. It's worth finding out when these virtual meetings would be before accepting any offer. If you want the job, don't wait for the perfect portfolio - just apply. If not, it's worth keeping the handout on file. One thing that is a bit curious is pitching to a bunch of students that they're looking for a senior developer.
|
# ? Sep 26, 2011 23:16 |
|
Not planning to comment on whether you can handle the load (24 hours was a HUGE amount at my Uni) but as far as applying now -- DO IT. If you go back a bit, I was posting in this thread for advice not *too* long ago. Since then, I've ended up a corporate recruiter amongst other things and now have direct advice to offer: APPLY NOW. If a company is interested in you, they WILL keep in touch and follow up with you. That is the #1 thing I wish I'd known as a college student. Apply early and often! Even if they don't call you back from your first resume, don't give up. Any company worth its salt is receiving hundreds/thousands of resumes and they all bleed together. What makes a mark is interest, enthusiasm, and persistence (combined with talent and ability, obviously...), not your GPA. I'm currently holding 3 positions open until next May for people we really liked. You lose NOTHING by applying ASAP and repeatedly. Companies aren't going to say "hell that guy is so annoying, toss it in the trash". Speaking from the other side of the fence, one of the things we look for most (again, beyond actual skills, which TONS of people have) is how personable and excited said applicant is. You can literally do yourself NO harm by trying now and again later. Trust me. I just spent 2 weeks doing nothing but recruiting people like you. A resume accompanied by an excited, personable person was worth more than a half point of GPA.
|
# ? Sep 27, 2011 01:15 |
|
|
# ? May 17, 2024 05:08 |
|
Understood. I'll update my resume and send it off after I have a few people look at it. Thank you, everyone!
|
# ? Sep 27, 2011 04:59 |