Search Results

Search found 39290 results on 1572 pages for 'even numbers'.

Page 97/1572 | < Previous Page | 93 94 95 96 97 98 99 100 101 102 103 104  | Next Page >

  • why would Remmina stop working?

    - by Chris Curvey
    Until sometime last night, I had remmina working fine. I could run RDP through an SSH tunnel and all was well. Then it stopped working. I can get as far as the password dialog for my work machine, but then it just says "Cannot connect to RDP server localhost". I can't even find any logs that look interesting. I've re-installed remmina, cleared my .remmina directory, restarted my machine, and even restarted my gateway. Just to make it really weird, my laptop (which has the same setup -- latest Ubuntu and Remmina) can make the connection just fine. It is even going through the same router, albeit wirelessly. Any thoughts?

    Read the article

  • Download the Original Fallout For Free Today [4/6]

    - by Jason Fitzpatrick
    Fallout, the first game in the popular post-apocalyptic RPG series, is available for free today. Grab the game along with a detailed manual, game bible, soundtrack, and more. Courtesty of gaming site GOG, you can score a free Fallout bundle that includes the original game from 1997, a detailed manual, a 200+ page game bible filled with the history of the Fallout games and timeline, wallpaper, artwork, and even the game soundtrack. Not a bad haul for a single free download that weighs in at 506MB. Check out the video of the in-game introduction above and then hit up the link below to grab a copy. Fallout [GOG via Boing Boing] How to Own Your Own Website (Even If You Can’t Build One) Pt 3 How to Sync Your Media Across Your Entire House with XBMC How to Own Your Own Website (Even If You Can’t Build One) Pt 2

    Read the article

  • How to Use a 64-bit Web Browser on Windows

    - by Chris Hoffman
    64-bit version of Windows don’t use 64-bit browsers by default – they’re still in their infancy, although even Adobe Flash now supports 64-bit browsers. Using a 64-bit browser can offer significant performance benefits, according to some benchmarks. This article is for Windows users – 64-bit Linux distributions include 64-bit browsers, so you don’t have to do anything special on Linux. How to Own Your Own Website (Even If You Can’t Build One) Pt 1 What’s the Difference Between Sleep and Hibernate in Windows? Screenshot Tour: XBMC 11 Eden Rocks Improved iOS Support, AirPlay, and Even a Custom XBMC OS

    Read the article

  • Narrow-phase collision detection algorithms

    - by Marian Ivanov
    There are three phases of collision detection. Broadphase: It loops between all objecs that can interact, false positives are allowed, if it would speed up the loop. Narrowphase: Determines whether they collide, and sometimes, how, no false positives Resolution: Resolves the collision. The question I'm asking is about the narrowphase. There are multiple algorithms, differing in complexity and accuracy. Hitbox intersection: This is an a-posteriori algorithm, that has the lowest complexity, but also isn't too accurate, Color intersection: Hitbox intersection for each pixel, a-posteriori, pixel-perfect, not accuratee in regards to time, higher complexity Separating axis theorem: This is used more often, accurate for triangles, however, a-posteriori, as it can't find the edge, when taking last frame in account, it's more stable Linear raycasting: A-priori algorithm, useful for semi-realistic-looking physics, finds the intersection point, even more accurate than SAT, but with more complexity Spline interpolation: A-priori, even more accurate than linear rays, even more coplexity. There are probably many more that I've forgot about. The question is, in when is it better to use SAT, when rays, when splines, and whether there is anything better.

    Read the article

  • Community to discuss project ideas

    - by Auxiliary
    Although I already predict the down votes but the question has stuck in my throat for a while now. I think this has happened to many of us. Sometimes we find a great idea for a project and obviously think this is THE GREATEST idea ever but then one of the following things will happen: The project is a small one, so you might actually give it a try and see how it goes. The project is a big one, even a risk, and you just need a good programmer's community that you could just discuss your idea with them and see what they say and even get some help to make it happen. And there's always the possibility of others stealing your idea which is really bad. So could anyone suggest an online community or place or even method of talking about ideas and the ways of developing them? and do you think it's a good thing to tell others about your idea?

    Read the article

  • Is it possible to update the livetile in XNA WP7 game?

    - by Jaakko Lipsanen
    ( I'm not sure if this question belongs here, but since it is related to game development and I have no idea where else I should post this, I will post this here ) As the title says, what I am basically asking is if it is possible to update the livetile of an pure XNA game ( not SL + XNA hybrid )? I've been thinking something like that whenever user launches the game, I would create an texture dynamically and then update the livetile to show that texture. Even better would be if I could schedule this code to run for example once a day, without requiring user to even launch the game. Is this possible in WP7 or in WP8 ( is the WP8 SDK even publicly released yet? ) in pure XNA game? What about in XNA + SL hybrid?

    Read the article

  • The Internet from a 1990s Point of View [Video]

    - by Asian Angel
    Are you ready for a retro look at the Internet? Then prepare to journey back in time to 1995 with this video and its view of the early days of the Internet. From YouTube: Trine Gallegos hosts this segment shot in 1995 when the Internet was first becoming an icon. This is an interesting look back at how clunky the applications were. I don’t even think they were using a computer mouse yet. Internet – from the 1990′s point of view [via Fail Desk] How to Own Your Own Website (Even If You Can’t Build One) Pt 1 What’s the Difference Between Sleep and Hibernate in Windows? Screenshot Tour: XBMC 11 Eden Rocks Improved iOS Support, AirPlay, and Even a Custom XBMC OS

    Read the article

  • changed /etc permission in oneiric (ubuntu11.10) by using "sudo chmod 665 /etc" cant use sudo now

    - by GuruDevil
    i screwed up big time. i changed the permission of /etc in ubuntu 11.10 by using following command sudo chmod 665 /etc now when ever i try to use sudo it gives the following error: sudo: can't open /etc/sudoers: Permission denied sudo: no valid sudoers sources found, quitting any help will be greatly appreciated because i am new to ubuntu....i have already tried using su but it doesnt even login as root and even i give it the right password it always say Authentication Failure......i dont want to login as root coz its risky and even a newbie in linux like me is not stupid enough to have such control...i just want to use my sudo again......i have tried to go into recovery mode as well but i cant get in to recovery mode......HELP please!!!

    Read the article

  • If an app runs well on iPhone 3GS with iOS 5.1, how to know that it runs well on iOS 4.3? [closed]

    - by ????
    I bought an iPhone 3GS just to test backward compatibility of apps that I developed, but it arrived preinstalled with iOS 5.1. So even if an app runs well on iPhone 3GS and iOS 5.1 with its hardware limitation, how can we tell that it runs well even on iPhone 3GS with iOS 4.3? Will it actually be better to install iOS 4.3 on the phone so that we know even the older iOS can support it, so the newer iOS will work well supposedly? Or is there a need to buy yet another iPhone 3GS and install 4.3 on one and 5.1 on the other? (my assumption is that if we set the app's build target iOS to 4.3, the iPhone 3G won't be able to install it, because iPhone 3G only runs iOS up to 4.2. So the target device is 3GS but not earlier. But it will exclude iPod Touch 2nd Generation as well because they also can only support iOS up to 4.2 only)

    Read the article

  • Ubuntu 12.04 version of Netbeans doesn't have the JavaFX plugin

    - by aliasbody
    I just want to know why does Netbeans 7.0.1 from the official Ubuntu 12.04 doesn't have all the plugins (in especial the JavaFX plugin) on it while the official Netbeans from the website (even the version with the less plugin), has it by default ? And how can we change that ? Because I love Ubuntu (even if it is extremly slow on my Asus 1215N (it is the only OS that is slow on it, but that's not very important), but I am trying to use it only with the software provided by the Original repositories without having to download manually or even use any PPA. Thanks in Advance

    Read the article

  • Broke my sudoers password, how do I reset it without using sudo?

    - by Eric Dand
    I thought it would be a good idea to finally take the password off my little netbook since it has never actually been of any use, and has mostly just slowed down . But when I went to change my password, there wasn't even an option to make it blank, and any attempt to make it a few easy characters was met with "Password too weak". So I did what any good geek would do and popped open the terminal, read the manual entry for passwd and quickly used the -d option to remove the password from my account. It all went well for a couple days (I even managed to also make my keychain password blank) until I tried to update the thing. My sudoers password is not blank, and it's not my old password. I have no idea what it is. How do I reset it (or even better, make it blank) without the use of the sudo command?

    Read the article

  • Caesar Cipher Program In C++ [migrated]

    - by xaliap81
    I am trying to write a caesar cipher program in c++. This is my codes template: int chooseKEY (){ //choose key shift from 1-26 } void encrypt (char * w, char *e, int key) { //Encryption function, *w is the text in the beginning, the *e is the encrypted text //Encryption in being made only in letters noy in numbers and punctuations // *e = *w + key } void decrypt (char * e, char *w, int key) { // Decryption function, *e is the text in the beginning, the *w is the decrypted text //Dencryption in being made only in letters no numbers and punctuations // *w = *e - key } void Caesar (char * inputFile, char * outputFile, int key, int mode) { // Read the inputfile which contains some data. If mode ==1 then the data is being //encrypted else if mode == 0 the data is being decrypted and is being written in //the output file } void main() { // call the Caesar function } The program has four functions, chooseKey function have to return an int as a shift key from 1-26. Encrypt function has three parameters, *w is the text in the beginning, *e is the encrypted text and the key is from the choosekey function.For encryption : Only letters have to be encrypted not numbers or punctuation and the letters are counting cyclic. Decrypt function has three parameters *e is the encrypted text, *w is the beginning text and the key. Caesar function has four parameters, inputfile which is the file that contains the beginning text, output file which contains the encrypted text, the key and the mode (if mode==1) encryption, (mode ==0) decryption. This is my sample code: #include <iostream> #include <fstream> using namespace std; int chooseKey() { int key_number; cout << "Give a number from 1-26: "; cin >> key_number; while(key_number<1 || key_number>26) { cout << "Your number have to be from 1-26.Retry: "; cin >> key_number; } return key_number; } void encryption(char *w, char *e, int key){ char *ptemp = w; while(*ptemp){ if(isalpha(*ptemp)){ if(*ptemp>='a'&&*ptemp<='z') { *ptemp-='a'; *ptemp+=key; *ptemp%=26; *ptemp+='A'; } } ptemp++; } w=e; } void decryption (char *e, char *w, int key){ char *ptemp = e; while(*ptemp){ if(isalpha(*ptemp)) { if(*ptemp>='A'&&*ptemp<='Z') { *ptemp-='A'; *ptemp+=26-key; *ptemp%=26; *ptemp+='a'; } } ptemp++; } e=w; } void Caesar (char *inputFile, char *outputFile, int key, int mode) { ifstream input; ofstream output; char buf, buf1; input.open(inputFile); output.open(outputFile); buf=input.get(); while(!input.eof()) { if(mode == 1){ encryption(&buf, &buf1, key); }else{ decryption(&buf1, &buf, key); } output << buf; buf=input.get(); } input.close(); output.close(); } int main(){ int key, mode; key = chooseKey(); cout << "1 or 0: "; cin >> mode; Caesar("test.txt","coded.txt",key,mode); system("pause"); } I am trying to run the code and it is being crashed (Debug Assertion Failed). I think the problem is somewhere inside Caesar function.How to call the encrypt and decrypt functions. But i don't know what exactly is. Any ideas?

    Read the article

  • What book do you recommend for the OCAJP certification (1Z0-803) and OCPJP (1Z0-804) [on hold]

    - by Muhammad Gelbana
    I find completely contradicting reviews for the VERY same book on amazon and even some book writers are rewarding people for good reviews so basically most of the reviews are totally fake ! You can even figure it out from the reviewer name, which you'll similar to the writer's name and assume that they could actually be from the same country and the reviewer is just being helpful, to the book writer of course ! I can't make my mind for which book I should buy ! I only need a book or two that covers the Java associate and professional topics very well, not just an overview, I need a material that covers everything from A to Z. Even though I've been developing in Java for around 4.5 years but I must not know a detail or two. Would someone kindly shed some light on a good book based on actual experience with the book ? THANK YOU !

    Read the article

  • Using C# regex to select text based on custom tags

    - by spaceman
    I have a string in c# containing some data i need to extract based on certain conditions. The string contains many tenders in the following form : <TENDER> some words, don't know how many, may contain numbers and things like slashes (/) or whatever <DESCRIPTION> some more words and possibly other things like numbers or whatever describing the tender here </DESCRIPTION> some more words and possibly numbers and weird things </TENDER> This string doesn't contain any nested <TENDER> tags, its flat. The <DESCRIPTION> tags occur only once within the <TENDER> tags. I'm using : <TENDER>(.+?)</TENDER> as the regex to split up the tenders and it works fine. If this is wrong or stupid and you know a better way to write this please let me know as I have discovered I suck at regex. My problem that I now need to only select a tender if its description contains any word in a list of keywords (lets say for now i want to select a tender only if it contains either "concrete" or"brick" in the description). So far the regex I have come up with looks like this, but I don't know what to put in the middle. Also I have a vague suspicion that this might return me some false positives. <TENDER>(.+?)<DESCRIPTION>have no idea what to do here</DESCRIPTION>(.+?)</TENDER> If any of you regex guru's could point me in the right direction I would be most appreciative.

    Read the article

  • nth ugly number

    - by Anil Katti
    Numbers whose only prime factors are 2, 3 or 5 are called ugly numbers. Example: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, ... 1 can be considered as 2^0. I am working on finding nth ugly number. Note that these numbers are extremely sparsely distributed as n gets large. I wrote a trivial program that computes if a given number is ugly or not. For n 500 - it became super slow. I tried using memoization - observation: ugly_number * 2, ugly_number * 3, ugly_number * 5 are all ugly. Even with that it is slow. I tried using some properties of log - since that will reduce this problem from multiplication to addition - but, not much luck yet. Thought of sharing this with you all. Any interesting ideas? Using a concept similar to "Sieve of Eratosthenes" (thanks Anon) for (int i(2), uglyCount(0); ; i++) { if (i % 2 == 0) continue; if (i % 3 == 0) continue; if (i % 5 == 0) continue; uglyCount++; if (uglyCount == n - 1) break; } i is the nth ugly number. Even this is pretty slow. I am trying to find 1500th ugly number.

    Read the article

  • Why are floating point values so prolific?

    - by Kibbee
    So, title says it all. Why are floating point values so prolific in computer programming. Due to problems like rounding errors, and not being able to even accurately represent numbers such as 0.1, I really can't see how they got as far as they did. I understand that the computation is faster with floating point numbers, however, I can think of only a few cases that they actually the right data type would be using. If you sat back and think about every time you used a floating point value, how many times did you say, well, some error would be ok, as long as the result was a few microseconds faster. It really makes me think because Jeff was talking about NP completeness, and how heuristics give an answer that is kind of right. And well, computers shouldn't do that. They should give you the answer that is correct. Yet we see floating point values used in many applications where they are completely not valid. What really bugs me, isn't that floating point exists, but that in many languages, there isn't even a viable alternative, non-floating point, decimal value. A lot of programmers when doing financial applications have to fall back to storing the number of cents in an integer field. Which brings with it all kinds of other problems. Why do floats continue to be so prolific, even though they can't represent the real answer, and we expect computers to be accurate? [EDIT] Just to clarify, I was talking about Base 2 floating points, and not base 10 floating points. .Net offers the Decimal data type, which is a base 10 floating point value which offers a much better representation of the numbers we deal with on a daily basis in most computer programs. I find it hard to believe that even modern languages like Java don't support base 10 floating point values, unless you want to move into the realm of things like BigDecimal, which isn't really the right answer either in a lot of situations.

    Read the article

  • JAVA Regular Expression Errors

    - by Berkay
    I'm working on a simply password strength checker and i can not success applying regular expressions. In different resources different kinds of regular expressions are defined. i also find javascript regular expressions but had some problems to adapt. First, these are the regular expressions i need for JAVA: at least one lower case letter at least one upper case letter at least one number at least three numbers at least one special character at least two special characters both letters and numbers both upper and lower case letters, numbers, and special characters My goal is not being a regular expression expert i just want to use the parts i need.If you direct me good tutorials which discusses above for java, will be appreciated. Second, in this link some of them are mentioned but i'm getting problems to apply them. here does not catch the lower case letter (my pass: A5677a) if (passwd.matches("(?=.*[a-z])")) // [verified] at least one lower case letter {Score = Score+5;} Also here i'm getting error : illegal escape character. if (passwd.matches("(?=.*\d)")) // [verified] at least one number Finally, are these expressions all different in different kind of programming or script languages?

    Read the article

  • Double split in C

    - by Dmitri
    Hi again dear community! OK. For example I have this line in my txt file: 1|1,12;7,19;6,4;8,19;2,2 . As you can see, it has 2 parts, separated by "|". I have no problems getting both parts, and separating second part ( 1,12;7,19;6,4;8,19;2,2 ) using ";" separator. BUT I do have problems with separating further by "," to get first and second number of each set. This is my current code: result = strtok(result, ";"); while(result != NULL ) { printf("%s\n", result); result = strtok(NULL, ";"); } It outputs me: 1,12 7,19 6,4 8,19 2,2 OK, great. But when I try to 'strtok' (I'm using this method for splitting) like this: result = strtok(result, ";"); while(result != NULL ) { //printf("%s\n", result); help = strtok(result, ","); while(help != NULL) { printf("<%s>", help); help = strtok(NULL, ","); } result = strtok(NULL, ";"); } I only get "<1,<12" like there is only one set in this set of numbers. I dont understand where are the rest of the numbers. Instead, output should be: <1,<12,<7,<19,<6,<4,<8,<19,<2,<2. Could someone please give a solution, how to get EACH number of each set this set of numbers. Maybe there are other methods or I'm doing something wrong :) Thank you! Best Regards, Dmitri

    Read the article

  • MS Ajax FilteredTextBox stopped working

    - by TenaciousImpy
    Hi, I'm using Microsoft's AJAX library via their CDN. Everything was going fine in an old project. I then created a new project and copied and pasted some of the AJAX code hoping that it would work. However, my code isn't working and I've been struggling to figure out why. I'm trying to implement a filtered textbox: <script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js" type="text/javascript"></script> <script src="http://ajax.microsoft.com/ajax/beta/0911/Start.debug.js" type="text/javascript"></script> <script src="http://ajax.microsoft.com/ajax/beta/0911/extended/ExtendedControls.debug.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function() { Sys.require(Sys.components.filteredTextBox, function() { $("[id$='UserName']").filteredTextBox({ InvalidChars: ".", FilterType: Sys.Extended.UI.FilterTypes.Numbers | Sys.Extended.UI.FilterTypes.UppercaseLetters | Sys.Extended.UI.FilterTypes.LowercaseLetters | Sys.Extended.UI.FilterTypes.Custom, FilterMode: Sys.Extended.UI.FilterModes.ValidChars }); }); }); </script> When I run this, the textbox isn't filtered and I can enter any character. In Chrome, I used the Dev Tools and it found two errors on the page. In my .aspx page, I have: Uncaught TypeError: Cannot read property 'Numbers' of undefined (regarding the Sys.Extended.UI.FilterTypes.Numbers in the code above). In filteredtextboxbehavior.debug.js, I have the error: Uncaught TypeError: Object #<an Object> has no method 'registerComponent' Any ideas why I'm getting this error? The code has been working previously so I'm not sure if I had added any extra settings in my old project which the new one doesn't have. Thanks! ps:The textbox can be found as any other actions on it are recognized.

    Read the article

  • Speed up bitstring/bit operations in Python?

    - by Xavier Ho
    I wrote a prime number generator using Sieve of Eratosthenes and Python 3.1. The code runs correctly and gracefully at 0.32 seconds on ideone.com to generate prime numbers up to 1,000,000. # from bitstring import BitString def prime_numbers(limit=1000000): '''Prime number generator. Yields the series 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 ... using Sieve of Eratosthenes. ''' yield 2 sub_limit = int(limit**0.5) flags = [False, False] + [True] * (limit - 2) # flags = BitString(limit) # Step through all the odd numbers for i in range(3, limit, 2): if flags[i] is False: # if flags[i] is True: continue yield i # Exclude further multiples of the current prime number if i <= sub_limit: for j in range(i*3, limit, i<<1): flags[j] = False # flags[j] = True The problem is, I run out of memory when I try to generate numbers up to 1,000,000,000. flags = [False, False] + [True] * (limit - 2) MemoryError As you can imagine, allocating 1 billion boolean values (1 byte 4 or 8 bytes (see comment) each in Python) is really not feasible, so I looked into bitstring. I figured, using 1 bit for each flag would be much more memory-efficient. However, the program's performance dropped drastically - 24 seconds runtime, for prime number up to 1,000,000. This is probably due to the internal implementation of bitstring. You can comment/uncomment the three lines to see what I changed to use BitString, as the code snippet above. My question is, is there a way to speed up my program, with or without bitstring?

    Read the article

  • PostgreSQL: Auto-partition a table

    - by Adam Matan
    Hi, I have a huge database which holds pairs of numbers (A,B), each ranging from 0 to 10,000 and stored as floats. e.g., (1, 9984.4), (2143.44, 124.243), (0.55, 0), ... Since the PostgreSQL table which stores these pairs grew quite large, I have decided to partition it into inheriting sub-tables. I intend to create 100 such tables, each storing a range of 1000x1000. The problem is that these numbers tend to come in large chunks of nearby numbers. It means that in the future, some tables will be nearly empty and some will hold a very large portion of the database. Unfortunately, the distribution of future pairs is yet unknown. I am looking for a way to automatically repartition my table. That means that if a certain subtable holds more than a specific number of pairs, it will be automatically partitioned into four sub-sub tables, and so on. My questions are: Is recursive partitioning and inheritance possible in PostgreSQL 8.3? Will indexes and query plans understand it? What's the best way to split a subtable once it grew too large? I should point out that this isn't a live database, so a downtime of few hours every week is totally acceptable. Thanks in advance, Adam

    Read the article

  • How to effectively use WorkbookBeforeClose event correctly?

    - by Ahmad
    On a daily basis, a person needs to check that specific workbooks have been correctly updated with Bloomberg and Reuters market data ie. all data has pulled through and that the 'numbers look correct'. In the past, people were not checking the 'numbers' which led to inaccurate uploads to other systems etc. The idea is that 'something' needs to be developed to prevent the use from closing/saving the workbook unless he/she has checked that the updates are correct/accurate. The numbers look correct action is purely an intuitive exercise, thus will not be coded in any way. The simple solution was to prompt users prior to closing the specific workbook to verify that the data has been checked. Using VSTO SE for Excel 2007, an Add-in was created which hooks into the WorkbookBeforeClose event which is initialised in the add-in ThisAddIn_Startup private void wb_BeforeClose(Xl.Workbook wb, ref bool cancel) { //.... snip ... if (list.Contains(wb.Name)) { DailogResult result = MessageBox.Show("some message", "sometitle", MessageBoxButtons.YesNo); if (result != DialogResult.Yes) { cancel = true; // i think this prevents the whole application from closing } } } I have found the following ThisApplication.WorkbookBeforeSave vs ThisWorkbook.Application.WorkbookBeforeSave which recommends that one should use the ThisApplication.WorkbookBeforeClose event which I think is what I am doing since will span all files opened. The issue I have with the approach is that assuming that I have several files open, some of which are in my list, the event prevents Excel from closing all files sequentially. It now requires each file to be closed individually. Am I using the event correctly and is this effective & efficient use of the event? Should I use the Application level event or document level event? Is there a way to prevent the above behaviour? Any other suggestions are welcomed VS 2005 with VSTO SE

    Read the article

  • Avoiding CheckStyle magic number errors in JDBC queries.

    - by Dan
    Hello, I am working on a group project for class and we are trying out CheckStyle. I am fairly comfortable with Java but have never touched JDBC or done any database work before this. I was wondering if there is an elegant way to avoid magic number errors in preparedStatement calls, consider: preparedStatement = connect.prepareStatement("INSERT INTO shows " + "(showid, showtitle, showinfo, genre, youtube)" + "values (default, ?, ?, ?, ?);"); preparedStatement.setString(1, title); preparedStatement.setString(2, info); preparedStatement.setString(3, genre); preparedStatement.setString(4, youtube); result = preparedStatement.executeUpdate(); The setString methods get flagged as magic numbers, so far I just added the numbers 3-10 or so to the ignore list for magic numbers but I was wondering if there was a better way to go about inserting those values into the statement. I also beg you for any other advice that comes to mind seeing that code, I'd like to avoid developing any nasty habits, e.g. should I be using Statement or is PreparedStatement fine? Will that let me refer to column names instead? Is that ideal? etc... Thanks!

    Read the article

  • Comparable and Comparator contract with regards to null

    - by polygenelubricants
    Comparable contract specifies that e.compareTo(null) must throw NullPointerException. From the API: Note that null is not an instance of any class, and e.compareTo(null) should throw a NullPointerException even though e.equals(null) returns false. On the other hand, Comparator API mentions nothing about what needs to happen when comparing null. Consider the following attempt of a generic method that takes a Comparable, and return a Comparator for it that puts null as the minimum element. static <T extends Comparable<? super T>> Comparator<T> nullComparableComparator() { return new Comparator<T>() { @Override public int compare(T el1, T el2) { return el1 == null ? -1 : el2 == null ? +1 : el1.compareTo(el2); } }; } This allows us to do the following: List<Integer> numbers = new ArrayList<Integer>( Arrays.asList(3, 2, 1, null, null, 0) ); Comparator<Integer> numbersComp = nullComparableComparator(); Collections.sort(numbers, numbersComp); System.out.println(numbers); // "[null, null, 0, 1, 2, 3]" List<String> names = new ArrayList<String>( Arrays.asList("Bob", null, "Alice", "Carol") ); Comparator<String> namesComp = nullComparableComparator(); Collections.sort(names, namesComp); System.out.println(names); // "[null, Alice, Bob, Carol]" So the questions are: Is this an acceptable use of a Comparator, or is it violating an unwritten rule regarding comparing null and throwing NullPointerException? Is it ever a good idea to even have to sort a List containing null elements, or is that a sure sign of a design error?

    Read the article

  • stack overflow problem in program

    - by Jay
    So I am currently getting a strange stack overflow exception when i try to run this program, which reads numbers from a list in a data/text file and inserts it into a binary search tree. The weird thing is that when the program works when I have a list of 4095 numbers in random order. However when i have a list of 4095 numbers in increasing order (so it makes a linear search tree), it throws a stack overflow message. The problem is not the static count variable because even when i removed it, and put t=new BinaryNode(x,1) it still gave a stack overflow exception. I tried debugging it, and it broke at if (t == NULL){ t = new BinaryNode(x,count); Here is the insert function. BinaryNode *BinarySearchTree::insert(int x, BinaryNode *t) { static long count=0; count++; if (t == NULL){ t = new BinaryNode(x,count); count=0; } else if (x < t->key){ t->left = insert(x, t->left); } else if (x > t->key){ t->right = insert(x, t->right); } else throw DuplicateItem(); return t; }

    Read the article

< Previous Page | 93 94 95 96 97 98 99 100 101 102 103 104  | Next Page >